IAR带的延时函数为什么误差这么大

2019-03-24 11:13发布

#define CPU_F ((double)8000000)

#define delay_us(x)  __delay_cycles((long)(CPU_F*(double)x/1000000.0))

#define delay_ms(x)  __delay_cycles((long)(CPU_F*(double)x/1000.0))
延时20s的话,误差竟然是三四秒啊 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
qinkaiabc
1楼-- · 2019-03-24 13:31
< 时钟选对了没?
armcu
2楼-- · 2019-03-24 17:11
 精彩回答 2  元偷偷看……
无酒亦醉
3楼-- · 2019-03-24 17:12
qinkaiabc 发表于 2014-7-24 21:45
时钟选对了没?

用的mclk,dco做的时钟源,并且校准了。我用32768hz的也试了一下,误差也不小
无酒亦醉
4楼-- · 2019-03-24 21:54
armcu 发表于 2014-7-25 07:58
应该程序的问题,我这边延时基本上很准确

确实是程序的问题。mclk默认分频,导致iar带的延时函数主时钟频率设置错误。
无酒亦醉
5楼-- · 2019-03-25 00:42
 精彩回答 2  元偷偷看……
FireLife
6楼-- · 2019-03-25 02:01
应该是时钟的问题,

一周热门 更多>

相关问题

    相关文章