分享~LED流水灯程序
单片机源程序如下:
- #include <msp430.h>
- typedef unsigned char uchar;
- typedef unsigned int uint;
- void delay(uint counts);
- void main( void )
- {
- uchar temp,i;
- temp=0x01;
-
- WDTCTL = WDTPW + WDTHOLD; //关狗
-
- /*------选择系统主时钟为8MHz-------*/
- BCSCTL1 &= ~XT2OFF; //打开XT2高频晶体振荡器
- do
- {
- IFG1 &= ~OFIFG; //清除晶振失败标志
- for (i = 0xFF; i > 0; i--); //等待8MHz晶体起振
- }
- while ((IFG1 & OFIFG)); //晶振失效标志仍然存在?
- BCSCTL2 |= SELM_2 + SELS; //MCLK和SMCLK选择高频晶振
-
- P2DIR = 0xff; /* LED 灯I/O口设为输出 */
- while(1)
- {
-
- P2OUT = ~temp; /*P2口的灯依次点亮*/
- delay(65000);
- temp<<=1;
- if(temp==0) temp=0x01;
- }
-
- }
- /*******************************************
- 函数名称:delay
- 功 能:用于消抖的延时
- 参 数:无
- 返回值 :无
- ********************************************/
- void delay(uint counts)
- {
- uint i,j;
- for(j=10;j>0;j--)
- {
- for(i = counts; i > 0; i--);
- }
- }
复制代码
所有资料51hei提供下载:
LED流水灯程序.zip
(79.18 KB, 下载次数: 15)
|