STM32入坑(11)LED闪烁+按键控制蜂鸣器(轮询法、中断法)

您所在的位置:网站首页 honeywell236报警器服务灯闪烁 STM32入坑(11)LED闪烁+按键控制蜂鸣器(轮询法、中断法)

STM32入坑(11)LED闪烁+按键控制蜂鸣器(轮询法、中断法)

2023-11-13 02:17| 来源: 网络整理| 查看: 265

LED闪烁+按键控制蜂鸣器 简介 配置方法(轮询法) 1. 配置LED 2.配置延时 3.配置按键 4.编写主函数 实验代码(轮询法) 配置方法(中断法) 1. 配置LED 2.配置延时 3.配置按键 4.配置中断 5.编写主函数 实验代码(中断法) 注意事项:

简介

实验名称:LED闪烁+按键控制蜂鸣器 实验现象:两个LED小灯闪烁,按下按键KEY1蜂鸣器响,再按一下蜂鸣器不不响 硬件需求:STM32单片机,LED灯,按键,蜂鸣器

配置方法(轮询法) 1. 配置LED

实现LED初始化函数LED_Init();

2.配置延时

实现延时函数:void delay_ms(u16 nms)

3.配置按键

实现按键初始化函数:void KEY_Init(void); 实现按键扫描函数:uint8_t KEY_Scan(uint8_t mode)

4.编写主函数

最重要的就是主函数了,不能采用普通的延时做法:LED1亮–延时–LED1灭–LED2亮–延时–LED2灭–延时–扫描按键。这样的做法会使单片机处理信息阻塞,导致按键不灵敏。 应该使用轮询法:单片机有个小延时,比如10ms,到时间后变量i++。i达到设定值LED闪烁,其他时间扫描按键实现蜂鸣器响/不响。

实验代码(轮询法)

KEY和LED的代码在前面都有,没有变化,这里只贴出主函数。

int main(void) { uint32_t i=0; LED_Init(


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3