电路设计,软件开发,专业项目团队承接电子产品开发!


ISPRO下载型编程器
火爆销售中

RS232/TTL转换器
全IC串口窃电

RS232/TTL转换线
全IC串口窃电

ByteBlasterMV Cable
CPLD/FPGA并口下载线

ByteBlaster II Cable ISPRO下载型编程器
支持S51/AVR/PIC
超级51开发板套件
前卫实用超值

PC/MCU/CPLD
三合一学习套件

全新万年历方案
AVR单片机开发板
 

Min51单片机仿真机
迷你型

ARM7开发板
仅售260元!
 

RS-232/RS-485双向接口电平转换器  

51单片机升级STM32
火爆销售中
MPLAB-ICD2
火爆销售中
LED51开发板
玩具又名图文显示棒

面板模块/开发板
经济危机明智决择

       

GSM MODEM GSM猫

SMS短信模块 工业级/全自动
火爆销售中

大功率数传电台

高速数传电台

您当前位置:电子技术资料 -> STM32 -> STM32配置时钟 ->

祝您阅读愉快!

STM32系统systick定时器与延迟时间计算


类别:技术文章
来源:未知
作者:未知
关键字:systick
加入日期:2011-1-10

STM32系统systick定时器与延迟时间计算

系统嘀嗒(SysTick)校准值寄存器
1.(SysTick) 系统嘀嗒时钟是由HCLK 分频 出来的。HCLK=SYSCLK=72MHz
/* Select HCLK/8 as SysTick clock source */
SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK_Div8);
当系统嘀嗒时钟设定为9 兆赫
或是:
SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK);
当系统嘀嗒时钟设定为72 兆赫
2.系统嘀嗒校准值固定到9000,当系统嘀嗒时钟设定为9 兆赫,产生1ms 时基。
/* SysTick interrupt each 9ms with counter clock equal to 1MHz */
SysTick_SetReload(9000);
该参数取值必须在1和0x00FFFFFF之间
3.
使能一下:
/* Enable the SysTick Counter */
SysTick_CounterCmd(SysTick_Counter_Enable);
/* Enable the SysTick Interrupt */
SysTick_ITConfig(ENABLE);
这还有另外一种设置方法:
经试验验证可行:
//NVIC_InitTypeDef NVIC_InitStructure;
/* Configure HCLK clock as SysTick clock source */
SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK);
/* Configure the SysTick handler priority */
NVIC_SystemHandlerPriorityConfig(SystemHandler_SysTick, 2, 0);
/* Configure one bit for preemption priority */
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
/* SysTick interrupt each 100 Hz with HCLK equal to 72MHz 每1ms发生一次
SysTick中断 */
SysTick_SetReload(72000);
/* Enable the SysTick Interrupt */
SysTick_ITConfig(ENABLE);
/* Enable the SysTick Counter */
SysTick_CounterCmd(SysTick_Counter_Enable);

关键是:SysTick_CLKSourceConfig,和SysTick_SetReload

您可能还会关注的相关技术资料:

中国电子网
www.EC66.com
QQ:34740080 EMAIL:iloveaoe@163.com
最佳浏览:1024*768
Copyright (C) 2001-2010 EC66.COM All Rights Reserved
Aoe/帝国 制作维护
粤ICP备18061901号