#include "stm32f10x.h"
#include "config_led.h"
#include "config_key.h"
#include "config_delay.h"
// 假设LED和按键的配置已经在config_led.h和config_key.h中定义好了
void delay(uint16_t time) // 注意这里将u16更改为uint16_t,以符合标准类型
{
uint16_t i = 0, t = 0;
for (i = 0; i < time; i++)
{
for (t = 0; t < 1000; t++)
{
}
}
}
int main(void)
{
// 初始化函数
delay_init();
GPIO_LED_Config(); // LED I/O初始化函数
GPIO_KEY_Config(); // 按键I/O初始化函数
while (1)
{
// 读取按键状态
key_scan();
// 检查K1按键是否被按下
if (K1 == 0) // 假设K1在config_key.h中已定义为按键的GPIO引脚状态
{
// 如果K1被按下,则切换LED1的状态
LED1 = !LED1;
// 可选:添加短暂延时以避免按键抖动
delay(40); // 注意这里将延时时间减少,以避免用户体验变差
}
// 如果需要,可以在这里添加其他逻辑
// ...
// 简单的延时循环,减少CPU使用率(非必要,但有助于降低LED闪烁频率)
delay(100);
}
}
keil程序,按键控制led灯光亮灭
最新推荐文章于 2024-08-28 22:04:59 发布