弗原創IT教育中心 2.矩阵式键盘按键的识别 识别按键的方法很多,其中,最常见的方法是扫描法。下 面以图174中8号键的识别为例来说明扫描法识别按键的过程。 按键按下时,与此键相连的行线与列线导通,行线在无键 按下时处在高电平。显然,如果让所有的列线也处在高电平, 那么,按键按下与否不会引起行线电平的变化,因此,必须使 所有列线处在低电平。只有这样,当有键按下时,该键所在的 行电平才会由高电平变为低电平。CPU根据行电平的变化,便 能判定相应的行有键按下。8号键按下时,第2行一定为低电平 然而,第2行为低电平时,能否肯定是8号键按下呢?
2. 矩阵式键盘按键的识别 识别按键的方法很多,其中,最常见的方法是扫描法。下 面以图17.4中8号键的识别为例来说明扫描法识别按键的过程。 按键按下时,与此键相连的行线与列线导通,行线在无键 按下时处在高电平。显然,如果让所有的列线也处在高电平, 那么,按键按下与否不会引起行线电平的变化,因此,必须使 所有列线处在低电平。只有这样,当有键按下时,该键所在的 行电平才会由高电平变为低电平。CPU根据行电平的变化,便 能判定相应的行有键按下。8号键按下时,第2行一定为低电平。 然而,第2行为低电平时,能否肯定是8号键按下呢?
弗原創IT教育中心 回答是否定的,因为9、10、11号键按下,同样会使第2行 为低电平。为进一步确定具体键,不能使所有列线在同一时刻 都处在低电平,可在某一时刻只让一条列线处于低电平,其余 列线均处于高电平,另一时刻,让下一列处在低电平,依此循 环,这种依次轮流每次选通一列的工作方式称为键盘扫描。采 用键盘扫描后,再来观察8号键按下时的工作过程,当第0列处 于低电平时,第2行处于低电平,而第1、2、3列处于低电平 时,第2行却处在高电平,由此可判定按下的键应是第2行与第 0列的交叉点,即8号键
回答是否定的,因为9、10、11号键按下,同样会使第2行 为低电平。为进一步确定具体键,不能使所有列线在同一时刻 都处在低电平,可在某一时刻只让一条列线处于低电平,其余 列线均处于高电平,另一时刻,让下一列处在低电平,依此循 环,这种依次轮流每次选通一列的工作方式称为键盘扫描。采 用键盘扫描后,再来观察8号键按下时的工作过程,当第0列处 于低电平时,第2行处于低电平,而第1、2、3列处于低电平 时,第2行却处在高电平,由此可判定按下的键应是第2行与第 0列的交叉点,即8号键
弗原創IT教育中心 3.键盘的编码 对于独立式按键键盘,因按键数量少,可根据实际需要灵 活编码。对于矩阵式键盘,按键的位置由行号和列号惟一确 定,因此可分别对行号和列号进行二进制编码,然后将两值合 成一个字节,高4位是行号,低4位是列号。如图174中的8号 键,它位于第2行,第0列,因此,其键盘编码应为2OH。采用 上述编码对于不同行的键离散性较大,不利于散转指令对按键 进行处理。因此,可采用依次排列键号的方式对按排进行编码。 以图75中的4×4键盘为例,可将键号编码为:01H、02H 03H、…、OEH、OFH、10H等16个键号。编码相互转换可通过 计算或查表的方法实现
3. 键盘的编码 对于独立式按键键盘,因按键数量少,可根据实际需要灵 活编码。对于矩阵式键盘,按键的位置由行号和列号惟一确 定,因此可分别对行号和列号进行二进制编码,然后将两值合 成一个字节,高4位是行号,低4位是列号。如图17.4中的8号 键,它位于第2行,第0列,因此,其键盘编码应为20H。采用 上述编码对于不同行的键离散性较大,不利于散转指令对按键 进行处理。因此,可采用依次排列键号的方式对按排进行编码。 以图7.5中的4×4键盘为例,可将键号编码为:01H、02H、 03H、…、0EH、0FH、10H等16个键号。编码相互转换可通过 计算或查表的方法实现
弗原創IT教育中心 4.键盘的工作方式 对键盘的响应取决于键盘的工作方式,键盘的工作方式应 根据实际应用系统中CPU的工作状况而定,其选取的原则是既 要保证CPU能及时响应按键操作,又不要过多占用CPU的工作时 间。通常,键盘的工作方式有三种,即编程扫描、定时扫描和 中断扫描。 1)编程扫描方式 编程扫描方式是利用CPU完成其它工作的空余时间,调用 键盘扫描子程序来响应键盘输入的要求。在执行键功能程序 时,CPU不再响应键输入要求,直到CPU重新扫描键盘为止
4. 键盘的工作方式 对键盘的响应取决于键盘的工作方式,键盘的工作方式应 根据实际应用系统中CPU的工作状况而定,其选取的原则是既 要保证CPU能及时响应按键操作,又不要过多占用CPU的工作时 间。通常,键盘的工作方式有三种,即编程扫描、定时扫描和 中断扫描。 1) 编程扫描方式 编程扫描方式是利用CPU完成其它工作的空余时间,调用 键盘扫描子程序来响应键盘输入的要求。在执行键功能程序 时,CPU不再响应键输入要求,直到CPU重新扫描键盘为止
弗原創IT教育中心 键盘扫描程序一般应包括以下内容: (1)判别有无键按下。 (2)键盘扫描取得闭合键的行、列值。 (3)用计算法或查表法得到键值。 (4)判断闭合键是否释放,如没释放则继续等待 5)将闭合键键号保存,同时转去执行该闭合键的功能
键盘扫描程序一般应包括以下内容: (1) 判别有无键按下。 (2) 键盘扫描取得闭合键的行、列值。 (3) 用计算法或查表法得到键值。 (4) 判断闭合键是否释放,如没释放则继续等待。 (5) 将闭合键键号保存,同时转去执行该闭合键的功能