单片机方案中编码与键盘识别
扫描二维码
随时随地手机看文章
在单片机设计过程中,有时需要依靠键盘输入的支持。这就需要进行识别按键技术,在本文当中,小编将为大家介绍识别键盘的常见方法、盘的编码、以及单片机系统中键盘系统的工作方式。感兴趣的朋友快来看一看吧。
在实际应用中,识别按键的方法是非常多的,其中最常见的方法是扫描法。当按键按下,与此键相连的行线与列线导通,行线在无键按下时处在高电平。如果让所有的列线也处在高电平,那么按键按下与否不会引起行线电平的变化,因此必须使所有列线处在低电平。只有这样,在有键按下时该键所在的行电平才会由高电平变为低电平。CPU根据行电平的变化,便能判定相应的行有键按下。
键盘的编码
对于独立式按键键盘,因按键数量少,可根据实际需要灵活编码。对于矩阵式键盘,按键的位置由行号和列号惟一确定,因此可分别对行号和列号进行二进制编码,然后将两值合成一个字节,高4位是行号,低4位是列号。
键盘的工作方式
对键盘的响应取决于键盘的工作方式,键盘的工作方式应根据实际应用系统中CPU的工作状况而定,其选取的原则是既要保证CPU能及时响应按键操作,又不要过多占用CPU的工作时间。通常键盘的工作方式有三种,即编程扫描、定时扫描和中断扫描。
1、编程扫描方式
编程扫描方式是利用CPU完成其它工作的空余时间,调用键盘扫描子程序来响应键盘输入的要求。在执行键功能程序时,CPU不再响应键输入要求,直到CPU重新扫描键盘为止。
2、定时扫描方式
定时扫描方式就是每隔一段时间对键盘扫描一次,它利用单片机内部的定时器产生一定时间(例如10ms)的定时,当定时时间到就产生定时器溢出中断。CPU响应中断后对键盘进行扫描,并在有键按下时识别出该键,再执行该键的功能程序。
3、中断扫描方式
采用上述两种键盘扫描方式时,无论是否按键,CPU都要定时扫描键盘,而单片机应用系统工作时,并非经常需要键盘输入,因此,CPU经常处于空扫描状态。
中断模式适合在需要提升工作效率最大化的情况中使用,当采用中断模式时,如果没有按键按下,那么CPU会针对自己的工作进行处理,但如果按键被按下,则产生了中断请求,此时CPU就会主动执行针对键盘的子程序扫描,并对键号进行键盘识别。这样便能大大加强效率。