《msp430单片机延时函数的使用方法.doc》由会员分享,可在线阅读,更多相关《msp430单片机延时函数的使用方法.doc(2页珍藏版)》请在三一文库上搜索。
1、msp430单片机延时函数的使用方法今天看示例程序中出现了_delay_cycles()这个函数,在查找msp430x54x.h这个头文件的时候,发现这个头文件中没有该函数的声明,原来这个函数已经在IAR这个编译器中集成,这里总结一下_delay_cycles();这个函数的具体用法第一步,复制代码:#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
2、)x/1000.0)第二步:修改CPU_F 语句中的double8000000 改成MSP430 CPU的主频率,即是CPU的MCLK这里是使用的范例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个时钟周期。示例代码:修改昨天的程序,使之能够以6毫秒闪烁#include#include“for_5438_wjx.c”/头文件#define CPU_F (doub
3、le)8000000)/8M的晶振#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)void main( void )/ Stop watchdog timer to prevent TIme out resetWDTCTL = WDTPW + WDTHOLD;/关闭看门狗put_P5DIR_BIT4(1); / 主电源 P5.4put_P5OUT_BIT4(1); /打开外设电源put_P9SEL_BIT0(0);/设置P9.0为普通I/Oput_P9DIR_BIT0(1);/设置P9.0为输出put_P7SEL_BIT3(0);/开发板上7.3口是lcd的电源,设置P7.3为普通I/Oput_P7DIR_BIT3(1);/设置P7.3为输出put_P7OUT_BIT3(0);/给lcd供电while(1)put_P9OUT_BIT0(0);/点亮led数码管delay_ms(6);put_P9OUT_BIT0(1);/点亮led数码管delay_ms(6);