电子产业一站式赋能平台

PCB联盟网

搜索
查看: 332|回复: 0
收起左侧

【蓝桥杯嵌入式】第四章 按键控制LED

[复制链接]

397

主题

397

帖子

2459

积分

三级会员

Rank: 3Rank: 3

积分
2459
发表于 2023-9-26 21:11:00 | 显示全部楼层 |阅读模式

x25py4bvp5f6402624247.png

x25py4bvp5f6402624247.png

0 T% M4 P7 J) r1 [* P# T9 `: u. `1 E+ p8 ?' {; @( J
第一节 按键的基本知识
. @% R0 u7 z: k( m1 f8 U& I9 l按键的最基本的知识就是消抖,它分为软件消抖和硬件消抖。其中,软件消抖流程为:当检测到按键按下时,启动一个延时,持续一段时间(通常几毫秒);在延时结束后,再次读取按键状态;如果按键仍然处于按下状态,那么可以确定按键的状态为按下;否则,可以确定按键的状态为释放;软件消抖通过延时等待按键电平的稳定来避免误触发。如下图:
' K, G7 w- x; V( J5 f8 N  L         : _4 d" \8 W4 S; X1 `- u

3fp1tcoalfy6402624347.png

3fp1tcoalfy6402624347.png

- q: W  P$ A& @) g& Q# c$ C. k         
. o  E6 P& P  q2 ?# \8 Y: Z硬件的消抖方案有很多种:在按键引脚与微控制器之间添加外部电路元件,如电容、电阻或Schmitt触发器等,这些电路元件可以滤除按键的电气噪音,提供更稳定的电平信号。, i+ ^& }! L, t4 a, {
蓝桥杯嵌入式开发板并没有在硬件上处理,所以只能通过软件的方式来消抖。- i- R- u& X% C/ ~! v. a7 j/ X
第二节 硬件解读  
! l" X2 j  o7 p8 b/ B

sbcnjsom3tk6402624448.png

sbcnjsom3tk6402624448.png

- b5 y! u' K4 m- q- r" v从图中我们可以看出,一共有4个按键,每一个按键的原理图都是一样的,我们举一个例子吧,以PA0为例,当按键被按下,按键的1,2和3,3导通,按键的3,4接地,导致PA0也接地,所以PA0也就是低电平。由此我们知道,当按键按下时,PA0为低电平;反之为高电平。+ v' g# k2 E  i  ^1 y  D: [
以下是按键和引脚的关系:6 j' W* Q! c+ s: D& Z2 u
按键
  ~9 A. E! k$ m
引脚
+ I% T- }& V- ~$ X, l4 f" c1 [
B1
- d& r; V8 `- S6 U9 q
PB0- j" D1 z. C  \9 T  R
B21 w6 E! w# c5 {& g" ]
PB1
# I* _' p$ b1 P$ i: x* v# f9 F/ |/ V
B3) A# a3 T4 }/ J7 D
PB26 p- M# j+ H9 N" ?  H
B4
: e# U2 O- B# R) S* S
PA01 }2 h) w" A2 e5 k; O
         4 I$ P) I* D/ o; I" k  o7 C
第三节 CubeMX配置  配置PB0,PB1,PB2,PA0为输入模式,并配置上拉和标签。【注意:配图有误,配图为输出模式,正常是输入模式】
, H5 [( o: ]+ u0 o$ d, w

hc0ifwidcvp6402624548.png

hc0ifwidcvp6402624548.png
3 o% n; L% P$ M# q+ d( C: o" D1 b- g9 v
第四节 MDK代码  
% |! G6 Q' }" s' v" ^1 d" U" I1 `

sppykn1huoo6402624648.png

sppykn1huoo6402624648.png
5 |9 ^: I: q/ S
结合上图,可以看出需要20ms的消抖时间。所以MDK代码如下:  c: \. y' ~  W- p8 \

tmdsqv0jtva6402624748.png

tmdsqv0jtva6402624748.png
8 H1 M; T' T8 t: Z% y

# F, x. k& S7 n& O( E

nxdtt0gwuv26402624848.png

nxdtt0gwuv26402624848.png
1 X8 v* K8 u) u9 s
5 c" `9 p5 K: e

gqhs2em05wy6402624948.png

gqhs2em05wy6402624948.png
8 B- U& S+ z: r; p0 e
' f0 u- b( ^- H: n

kb2lr0zjfgn6402625049.png

kb2lr0zjfgn6402625049.png

: p" w8 p5 [9 M: _% g# \  C4 U7 h4 }; g3 ^+ Y$ l7 X

xxitahjhv1b6402625149.png

xxitahjhv1b6402625149.png

8 b  |1 l- L* S7 z) r5 [- r第五节 实验现象   注意:请用USB线连接电脑与开发板,注意是CN2口。# A4 w# @. b( B' F0 k( J. P
现象:LED闪烁一次,按下按键,对应的LED翻转一次。
0 B3 F0 c; w6 H- e# r* k来源:撞上电子微信公众号; ?4 ]; M8 t; [
版权:东莞市东城墨竹公子电子工作室
( n4 x/ D$ X+ e3 z日期:2023.08.30
. r; Q" M- `0 x1 [8 b2 k8 n: s==========+ f8 w, W! v% }5 J8 S4 i
往期回顾:【蓝桥杯嵌入式】第三章 LED流水灯3 K/ r* H  p7 ~" @' z/ i+ T
【蓝桥杯嵌入式】第二章 软件安装- X4 H) ?1 d" b$ ~: G' D; ^: [* ^
【蓝桥杯嵌入式】第一章 大赛概述7 O# V5 j& Z  l8 b6 G
==========
- \0 j" C2 E" r) b. Q) e" P

newnyjcl4ah6402625249.png

newnyjcl4ah6402625249.png
2 j  l8 f4 \, \! \8 m; T4 O4 {

4 p9 T% _* |3 v; l" F) D# i* s" ?$ d4 t+ @

1u04frqbl246402625349.png

1u04frqbl246402625349.png
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


联系客服 关注微信 下载APP 返回顶部 返回列表