嵌入式系统学习笔记之“按键控制”——STM32(二)

目录

一、实验目的

二、实验原理

        2.1GPIO配置:

        2.2按键扫描:

        2.3去抖动处理:

        2.4按键原理图

        2.5 蜂鸣器原理图

        2.6 LED原理图

三、实验步骤

3.1按键消抖

3.2硬件连接

3.3软件配置

四、实验代码

        4.1 main.c

        4.2 led.c

        4.3key.c

        4.4key.h

        4.5beep.c

        4.6 beep.h

五、实验结果展示

六、心得体会


一、实验目的

        1.1掌握GPIO引脚的配置和使用。

        1.2学习通过在主循环中不断扫描按键状态的方法,实现按键控制LED的点亮和熄灭,此外,我还实现了对蜂鸣器的控制。

        1.3提升对嵌入式系统编程和调试能力的理解与应用。

二、实验原理

        按键控制LED点亮是通过在主循环中不断扫描按键状态来实现的。具体原理如下:

        2.1GPIO配置

        将按键和LED分别连接到STM32F103ZET6的GPIO引脚,配置GPIO引脚为输入(按键)和输出(LED)。

        2.2按键扫描

        在主循环中,通过不断读取GPIO引脚的电平状态来判断按键是否按下,并控制LED的点亮和熄灭。

        2.3去抖动处理

        在软件中通过短时间延时和多次读取按键状态的方法,消除按键抖动的影响。

        2.4按键原理图

        2.5 蜂鸣器原理图

        2.6 LED原理图

三、实验步骤

3.1按键消抖

        因为按键是机械开关,在按下的时候会产生电平的抖动。可以采用延时消抖的方法,通过延时一小段时间,消除抖动。

3.2硬件连接

        ①将按键一端接STM32F103ZET6的GPIO引脚(例如:PA0),另一端接地,确保按键松开时GPIO引脚为高电平,按下时为低电平。

        ②将LED的正极通过限流电阻连接到STM32F103ZET6的GPIO引脚(例如:PB5),负极接地。

3.3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值