成都市中立鼎科技有限公司

中立鼎新闻
MCS -51单片机键盘接口技术
来源: 时间:2023-08-31
     键盘是一组按键的集合,它是最常用的单片机输入设备。操作人员通过键盘输入数据或命令实现人一机通信。键盘分编码键盘和非编码键盘。人们使用的电脑键盘为编码键盘,可通过两根电源线和两根数据线完成上百按键的键值传输。而在单片机实验板上设计的大多为非编码键盘。当然,单片机也可以和电脑键盘接口来完成输入控制。键盘上闭合键的识别由专用的硬件译码器实现,并产生键编号或键值的称为编码键盘;靠单片机软件识别键值的键盘称为非编码键盘。下面只介绍与单片机经常接口的非编码键盘的结构和工作原理。EI33变压器
     单片机的键盘按键常使用机械弹性按键开关,因此在闭合和断开的瞬间均伴随一连串的抖动,抖动时间长短由按键的机械特性决定,一般为5~10ms,按键抖动会造成按键被单片机系统误读,为了系统能够可靠工作,必须去除键抖动。按键的抖动可以用 软件和硬件两种方法消除,硬件去抖动的方法需要在单片机与键盘之间连接去抖动的硬件电路,电路稍显复杂,并且系统成本上升,一般采用软件去抖动,即通过编程来避免抖动,具体思想是:按键没有被按下时端口为高电平1,按键被按下时端口为低电平0,当按键被按下时的初期会有按下抖动,在编程时通过软件先检测到键被按下的低电平0,但系统不响应,而是通过延时函数延时一段时间(10ms即可),然后再次检测按键是否被按下,如果检测到的值确实还为低电平0,说明确实是按键被按下(相当于按下抖动过后再次检测键值),则 CPU 响应该按键,如果延时后检测到的值为高电平1,说明按键出现了抖动, CPU 不作响应。按键抖动波形和硬件去抖动电路。