初级会员

- 积分
- 57
- 金钱
- 57
- 注册时间
- 2013-3-20
- 在线时间
- 6 小时
|
1金钱
原子哥,
请教一个问题,我用F107板子,移植咱们的《FreeRTOS实验2-1 FreeRTOS移植实验》实验
更改了启动文件定义,并更改了“startup_stm32f10x_cl.s”文件,硬件晶振是25M
在delay_init()初始化之后,调用delay_ms(1000); 延时时间并不是1秒?
void delay_init()
{
u32 reload;
SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK);//Ñ¡Ôñía2¿ê±Öó HCLK
fac_us=SystemCoreClock/1000000; //2»ÂÛêÇ·ñê1óÃOS,fac_us¶¼Dèòaê1óÃ
reload=SystemCoreClock/1000000; //ÿÃëÖóμļÆêy′Îêy μ¥λÎaM
reload*=1000000/configTICK_RATE_HZ; //¸ù¾YconfigTICK_RATE_HZé趨òç3öê±¼ä
//reloadÎa24λ¼Ä′æÆ÷,×î′óÖμ:16777216,Ôú72MÏÂ,Ô¼oÏ0.233s×óóò
fac_ms=1000/configTICK_RATE_HZ; //′ú±íOS¿éòÔÑóê±μÄ×îéùμ¥λ
SysTick->CTRL|=SysTick_CTRL_TICKINT_Msk; //¿aÆôSYSTICKÖD¶Ï
SysTick->LOAD=reload; //ÿ1/configTICK_RATE_HZÃëÖD¶Ïò»′Î
SysTick->CTRL|=SysTick_CTRL_ENABLE_Msk; //¿aÆôSYSTICK
}
以上标红的参数都修改过,但是好像没有什么作用,请问是什么原因导致延时不准?谢谢
|
|