MSP430的精确延时
来源:互联网 发布:网络诈骗的典型案例 编辑:程序博客网 时间:2024/03/29 09:27
IAR 软件430的编译器里面我们可以利用它内部的延时子程序来实现我们想要的高精度软件延时,方法如下:
(1):将以下这段代码复制到你的.C源文件中。
#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))
(1):将以下这段代码复制到你的.C源文件中。
#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))
(2):修改
在 #define CPU_F ((double)8000000) 语句里 8000000 修改成你当前MSP430 CPU的主频频率,即CPU的MCLK。
单位为HZ。本例中的8000000为MCLK=8MHZ 的意思。
(3):使用范例
delay_us(1); //1 微秒的延时
delay_ms(1); //1 毫秒的延时
delay_us(3.5); //延时3.5微秒
delay_ms(3.5); //延时3.5毫秒
delay_ms(1000); //延时1秒
直接调用,如:__delay_cycles(100),就延时100个时钟周期.
在用单片机的时候常常会用到延时函数,430也不例外,常见的形式有:
void delay(unsigned int ms)
{
unsigned int i,j;
for( i=0;i<ms;i++)
for(j=0;j<1141;j++); //8MHz晶振时
}
复制代码//以上程序段在要求延时精度不高的场合可以用。
- MSP430的精确延时
- MSP430精确延时_delay_cycles
- msp430之__delay_cycles精确延时的说明及改正
- 对MSP430单片机__delay_cycles精确延时的说明及改正
- 对MSP430单片机__delay_cycles精确延时的说明及改正
- STM32的精确延时
- 精确延时的实现
- MSP430的软硬件C延时程序设计《转》
- KEIL C 的精确延时
- IAR 的精确延时程序
- IAR的精确延时程序
- AVR 的精确延时程序
- stm32f051精确延时的实现
- MSP430 延时总结
- UCOS 的延时函数OSTimeDlyHMSM()实现精确延时 .
- UCOS 的延时函数OSTimeDlyHMSM()实现精确延时
- 怎样编写精确的延时函数
- 51单片机的几种精确延时
- Javabeans
- ios常用加密方法
- 整理一篇不错的关于软件加密的文章
- 在Ubuntu中安装Qt SDK时候遇到需要安装C++编译器的问题
- Median
- MSP430的精确延时
- C# Socket编程(1)基本的术语和概念
- iOS学习之sqlite的创建数据库,表,插入查看数据
- 向Berkeley DB插入大文件
- wince添加楷体字库
- hibernate不支持decode
- ACCESS转SQL注意事项
- 心跳服务器
- linux系统下 python获取 内存、cpu、负载、网络流量、硬盘等信息