控制LED闪烁程序
第一次学习单片机相关知识,代码能力还不够强,进度缓慢
源码
通过在网上查找,找到了一份运行可成功完成led灯相应闪烁功能的代码,如下:
#include <msp430.h>
int main(void)
{
volatile unsigned int i;
WDTCTL = WDTPW+WDTHOLD; // Stop WDT
P1DIR |= BIT0; // P1.0 set as output
while(1) // continuous loop
{
P1OUT ^= BIT0; // XOR P1.0
for(i=20000;i>0;i--); // Delay
}
}
代码运行结果
观察到板子上有两个led灯,该代码控制闪烁的是P1.0的led1.0红光闪烁
修改代码
由于不清楚具体代码含义,想要通过修改以下两行代码完成闪烁灯的转变
P1DIR |= BIT0; // P1.0 set as output
P1OUT ^= BIT0; // XOR P1.0
观察到单片机上两个led灯分别为P1.0和P4.7于是修改代码为
P4DIR |= BIT7; // P4.7 set as output
P4OUT ^= BIT7; // XOR P4.7
代码运行结果
led4.7黄灯闪烁
关键点解析
MSP430F5529共四个LED灯,经观察现象其功能如下:
名称 | 功能 |
---|---|
LED101 | 上电标志 |
LED102 | 烧录闪烁 |
LED1 | 可供编程 |
LED2 | 可供编程 |