x25py4bvp5f6402624247.png
" L2 v% A0 ?* f; n; c) ]
; ?+ H; b( T& k第一节 按键的基本知识 ( T# t" {9 g Q% ~8 M0 x R
按键的最基本的知识就是消抖,它分为软件消抖和硬件消抖。其中,软件消抖流程为:当检测到按键按下时,启动一个延时,持续一段时间(通常几毫秒);在延时结束后,再次读取按键状态;如果按键仍然处于按下状态,那么可以确定按键的状态为按下;否则,可以确定按键的状态为释放;软件消抖通过延时等待按键电平的稳定来避免误触发。如下图:) R: q# v; R! p c6 N0 k* U
7 u" Y3 r2 j1 R
3fp1tcoalfy6402624347.png
, b T$ ?- |$ T8 `
; f& D' i" f$ S6 s硬件的消抖方案有很多种:在按键引脚与微控制器之间添加外部电路元件,如电容、电阻或Schmitt触发器等,这些电路元件可以滤除按键的电气噪音,提供更稳定的电平信号。' c; o5 X7 d( h# ?
蓝桥杯嵌入式开发板并没有在硬件上处理,所以只能通过软件的方式来消抖。1 v; {0 u7 Q& F9 `
第二节 硬件解读 ) F$ Z% W! W }; ^/ s1 u
sbcnjsom3tk6402624448.png
% E4 Q9 l3 y% n) t" |2 ]! _4 t
从图中我们可以看出,一共有4个按键,每一个按键的原理图都是一样的,我们举一个例子吧,以PA0为例,当按键被按下,按键的1,2和3,3导通,按键的3,4接地,导致PA0也接地,所以PA0也就是低电平。由此我们知道,当按键按下时,PA0为低电平;反之为高电平。
' q" q0 R8 E3 [" W以下是按键和引脚的关系:9 ~, N! ~. `# w: V
按键( P) n: I0 S# t0 I C4 G: C/ l
| 引脚
: n: M# h0 W# m- z1 i# j7 q% V | B1
+ x8 t$ r, M% b) q. X) r | PB0
3 h3 n9 q5 S# u: v. T# D( o. _ | B2
3 J% l4 q0 B+ X# N | PB1+ A. {7 B- \0 {& w* p3 A
| B3
: l% x* g7 r* m2 J: O5 \ | PB2
& f7 S5 p# w1 i$ d* p( O | B44 }6 \2 C: m0 P3 y1 A1 [' `' r8 S6 A
| PA0
9 @+ Q3 H, q% K6 g0 n |
" r( L5 x4 b0 T+ d% U第三节 CubeMX配置 配置PB0,PB1,PB2,PA0为输入模式,并配置上拉和标签。【注意:配图有误,配图为输出模式,正常是输入模式】
/ H8 ^: h& w( X% t- v
hc0ifwidcvp6402624548.png
) _1 R' w5 d# ^0 _* i% c; b
第四节 MDK代码 2 a) E; i! g: |9 ?! _
sppykn1huoo6402624648.png
. }* J9 ]& u, Y+ a t+ U, h) U* B
结合上图,可以看出需要20ms的消抖时间。所以MDK代码如下:4 E6 m' K4 J- f: k1 d; T% Q! M
tmdsqv0jtva6402624748.png
5 O- r5 H0 R% e: D: d: W
: k& v9 ?% Q" p1 b1 }! W
nxdtt0gwuv26402624848.png
7 x9 R' r6 c$ e5 }( o7 J* j7 e8 y1 A# d
gqhs2em05wy6402624948.png
2 V; U( h2 M- {# Q8 j
( y, Y- b% w$ B+ b! u2 x9 G
kb2lr0zjfgn6402625049.png
0 \6 F1 H { ~2 Q
( f0 I* ?( u% w. l5 u: F
xxitahjhv1b6402625149.png
$ K( I$ a* N, N& }5 |! X+ k
第五节 实验现象 注意:请用USB线连接电脑与开发板,注意是CN2口。: d# w& ~7 j4 g8 p" [4 f: e2 m
现象:LED闪烁一次,按下按键,对应的LED翻转一次。
* L% N& d* h2 e; o; I2 U来源:撞上电子微信公众号/ @) y5 V0 r5 Y* v- r
版权:东莞市东城墨竹公子电子工作室* c5 z) E, @' }' p
日期:2023.08.30( b+ ] H" c0 r5 y' C& |7 H8 Z" O( K/ O
==========
9 z+ ?% V+ X# Z6 ]往期回顾:【蓝桥杯嵌入式】第三章 LED流水灯
& r0 n& |' G) p' U! e& U0 P【蓝桥杯嵌入式】第二章 软件安装
% _* C; D/ \3 R8 [( b" C【蓝桥杯嵌入式】第一章 大赛概述
0 M- `' @8 T1 ~1 c! B4 ?4 R1 p* R==========# N j& h. ^& D# t
newnyjcl4ah6402625249.png
3 e. d, E: i! e7 [
3 F/ a' f" N/ s7 `& n. i* a/ h- U1 Q' G" f8 I( `6 f+ Q4 z
1u04frqbl246402625349.png
|