MSP430f149定时问题,请教各位

2019-03-24 11:00发布

一直弄不懂怎么准确定时啊,比如说我设置Mclk是8M,smclk=mclk,定时器A的也用smclk,定时1s的话CCR0=8000
(CCR0=1s/(1/800M));
不知道这样计算的值对吗. 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
armcu
1楼-- · 2019-03-24 18:19
< 公式有个小问题,可能是你的笔误。CCR0=1s / (1 / 8M) = 8M = 8000 000.从这个结果来看,延时一秒需要的定时器数值已经超过定时器的能力了(定时器为16位,最大数为0xFFFF)。要想实现1S的定时,分段实现吧,比如分成1000个1ms的定时。
lcofjp
2楼-- · 2019-03-24 22:05
< :TI_MSP430_内容页_SA7 -->
armcu 发表于 2014-8-18 18:36
公式有个小问题,可能是你的笔误。CCR0=1s / (1 / 8M) = 8M = 8000 000.从这个结果来看,延时一秒需要的定 ...

目前常见单片机的定时器在内部都具有时钟分频功能的,所以设置一下分频就可以了
hanwenli123
3楼-- · 2019-03-25 02:12
 精彩回答 2  元偷偷看……
hanwenli123
4楼-- · 2019-03-25 05:52
lcofjp 发表于 2014-8-18 19:54
目前常见单片机的定时器在内部都具有时钟分频功能的,所以设置一下分频就可以了

设置成8分频,1秒的话我没算错的话,CCR0为1000 000,还是不行吧
armcu
5楼-- · 2019-03-25 08:26
hanwenli123 发表于 2014-8-19 15:28
嗯写错了呵呵 ,按您说的应该是这样1ms=0.001s. CCR0=0.001s / ( 1 / 8M  )=8000,然后呢我在中断里面循环1 ...

对的
hanwenli123
6楼-- · 2019-03-25 14:06
 精彩回答 2  元偷偷看……

一周热门 更多>

相关问题

    相关文章