STM32F103C8T6实操学习2(Cube+HAL库)-按键控制LED灯

上一节已经详细介绍了GPIO相关知识,上一节运用到的是GPIO输出的应用,这一节是GPIO输入的应用。

一、硬件组成

  • 器件:

1.面包板

2.LED发光二极管

3.电阻(500Ω-1000Ω,最好有,此次操作没用)

4.杜邦线若干

5.ST-LINK下载线

6.按键(分二脚和四脚,本文操作按键为四脚,稍微复杂一点点,有二脚的尽量用二脚)

按键:常见的输入设备,按下导通,松手断开

按键抖动:由于按键内部使用的是机械式弹簧片来进行通断的,所以在按下和松手的瞬间会伴随有一连串的抖动。

按键消抖:通过延时跳过抖动的时间段,再判断IO输入电平。

(此图为二脚按键)

实物图:

图中四脚按键接法为对角线接法,一端接地(面包板负极),一端连接单片机的端口。


 

二、Cube配置

在上一节的基础上(注意:此次操作为保持统一没用对PB9进行命名)

增加PB15和PA12的GPIO输入的配置,并且将PB15设置为上拉模式,如图所示

(PB15控制PB9(绿灯),按住按键灯灭,松开灯亮;PA12控制PB6(红灯),按一下灯亮,再按一下灯灭)

因四脚按键一端接地(面包板负极),一端连接单片机的端口,此时因设置上拉。

三、代码程序

HAL_GPIO_TogglePin是翻转电平的函数(即原来为低电平经过翻转变为高电平,原来为高电平经过翻转变为低电平。)

结果展示:

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值