首先,是单灯如何点亮的问题,无非就是某个GPIO口输出高电平或者低电平(由外部电路决定)使灯亮灭,假设输出高电平为亮,输出低电平为灭。
其次,1hz闪烁,即代表定时1s开、关灯。所以要用到定时器。
代码如下:
#include "stdio.h"
#define LED_ON P1.1 = 1;
#define LED_OFF P1.1 = 0;
bit flag_1s;
bit flag_cnt;
void main(void) {
Sys_Init();
while(1) {
if(flag_1s == 1) {
flag_1s = 0;
if(flag_cnt ^= 1)
LED_ON;
else
LED_OFF;
}
}
}
Sys_Init() {
// 初始化MCU的IO口
// 初始化定时器
}
void Timer_ISR (void) interrupt 1 { // 定时器中断处理函数 1s 进入一次
flag_1s = 1;
}
温馨提示:答案为网友推荐,仅供参考