您的位置 首页 开关

MSP430单片机准确延时的办法解析

MSP430单片机精确延时的方法解析-#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))

其中第一行中的8000000为时钟,可以根据自己时钟设置。

发现一种MSP430的准确延时办法,经测验,的确狠准确。最低能够准确到1/OSC,例如:假如选用8MHz的晶体,那么最小延时便是125ns,现已使用示波器经过验证。


MSP430单片机准确延时的办法解析

具体做法如下:

先做如下预界说:

#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))

其间榜首行中的8000000为时钟,能够依据自己时钟设置。

然后在程序中直接条用delay_us和delay_ms即可。十分好用,入:

delay_ms (1); //延时1ms

delay_us(1); //延时1us

delay_us(0.125); //延时0.125us

留意:最低延时只能是1/OSC,不然就没有延时了。

该办法缺陷:不能传递变量,只能将常数作为参数

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/dianyuan/kaiguan/345075.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部