实现P2口的流水灯
主函数
#include <msp430x24x.h>
#define LED8PORT P2OUT //P2接8个LED灯
#define LED8SEL P2SEL //P2接8个LED灯
#define LED8DIR P2DIR //P2接8个LED灯
#define uchar unsigned char
#define uint unsigned int
//IAR软件的延时函数
#define CPU_F ((double)8000000)//8M
#define delay_us(x) __delay_cycles((long)(CPU_F*(double)x/1000000.0)) //us延时
#define delay_ms(x) __delay_cycles((long)(CPU_F*(double)x/1000.0)) //ms延时
uint i;
void Port_Init()
{
LED8SEL = 0x00; //设置IO口为普通I/O模式
LED8DIR = 0xff; //设置IO口P20的方向为输出
//LED8PORT = 0x01; //P20口初始设置为高电平
}
void main()
{
WDTCTL = WDTPW + WDTHOLD;//关闭看门狗
Port_Init();
while(1)
{
for(i=0;i<8;i++)
{
LED8PORT =~(0x01<<i);//低电平点亮
delay_ms(100);
}
for(i=0;i<8;i++)
{
LED8PORT =~(0x80>>i);
delay_ms(100);
}
}
}
proteus仿真图