按键是最常用的输入方式单片机的应用,学习单片机时,按键输入是必学习的内容,在大学课程《51单片机》有介绍,单片机的按键输入分为独立式按键和矩阵式按键。
1.什么是独立式按键所谓独立式按键就是指,每个按键占用一个GPIO口,如下图所示,就是两个独立按键,占用了两个单片机的GPIO口。
独立式按键在编程时比较简单、方便,但是严重浪费单片机的GPIO口资源。如果一个单片机系统中有多个按键,则需要考虑矩阵式按键或者是扩展GPIO口。
2.独立式按键有什么用按键都是用作输入的,在单片机系统中自然也被当作输入,单片机需要检测按键的输入情况做相应的逻辑处理。如下图所示,是单片机所实现的一个数字时钟,用到了四个独立按键。
可以利用这四个按键来设置时间、设置日期、设置闹钟等,从而实现与单片机的人机交互。
3.多按键的扩展方式有些场合会用到比较多的按键输入,如用单片机设计一个多通道的抢答器、用单片机实现一个计算器、密码锁等,这类情况如果再使用独立式按键需要占用大量的GPIO口。为了节省GPIO,可以通过矩阵式按键或者使用串入并出的移位寄存器来扩展。
上图是典型的矩阵式按键的原理图,通过8个GPIO即可实现4×4的矩阵键盘。矩阵式按键可以节省GPIO,但是程序相对复杂。
除了矩阵式按键外,还可以使用芯片来扩展,如74HC595等。
以上就是这个问题的回答,感谢留言、评论、转发。更多精彩内容请关注本头条号:玩转嵌入式。感谢大家。