#include "timer.h"
#include "led.h"
#include "delay.h"
int main()
{
LED_init();
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
delay_init();
timer_init(7199,4199);//设置预分频系数为7199+1=7200,计数器时钟频率f=72Mhz/7200=10KHz,
while(1)
{
PDout(2)=!PDout(2);
delay_ms(200);
}
}
主函数如上,如若按照格式把调用延时函数放在中断分组函数后,计数器的溢出时间就不是T=(4999+1)*(7199+1)/72M=500ms了,而远远大于这个值 约为5.6s。。。
当把延时函数放在最前面,就是和LED调用函数换顺序之后,计数器的溢出时间又是对的 约为500ms。
这是为什么呀,这些函数调用不是在timer_init之前么,怎么会影响到溢出时间勒....
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>