第8章 单片机人机接口
发布时间:2024-11-08
发布时间:2024-11-08
单片机
第8章 MCS-51单片机的人机界面接口技术8.1 键盘及其接口
8.2 显示器接口8.3 打印机接口
8.4 拨码盘及语音接口
单片机
8.1 键盘及其接口8.1.1 独立式键盘接口
8.1.2 行列式键盘
返回本章首页
单片机
在设计键盘接口时,解决以下几个问题: 开关状态的可靠输入——可设计硬件去抖动电 路或设计软件去抖动程序。 键盘状态监测方法——中断方式还是查询方式。 键盘编码方法。 键盘控制程序的编制。
单片机
8.1.1 独立式键盘接口1.独立式按键结构 独立式按键是指直接用I/O口线构成的单个按键 电路。每根I/O口线上按键的工作状态不会影响 其他I/O口线的工作状态。独立式按键电路如图 8-1所示。 2.独立式按键的软件结构 包括按键查询、键功能程序转移。FP0~FP7 为功能程序入口地址标号,PROM0~PROM7分 别为每个按键的功能程序。 图8-2为使用扩展I/O的独立式按键电路,按键 数量可多可少。
单片机
8031
+5V
+5V
I/O
8031I/O
INT0INT1
(a)中断方式
(b)查询方式
图 8-1-1 独立式按键电路
单片机
+5V P 2.7 ALE 8031 P0 WR RD 8 74LS 373 8 CS 8255 A0 A1 PA 0 01 2 3 4 5 6 7
PA 1 PA 2 PA 3 PA 4 D0 ~D 7 PA 5 PA 6 PA 7 WR RD RESET GND
1K
10μF +5V
图8-2 使用8255扩展I/O的独立式键盘
返回本节
单片机
8.1.2 行列式键盘1.键盘工作原理 行列式键盘电路原理如图8-3所示。按键设置在 行列式交点上,行列线分别连接到按键开关的两 端。当行线通过上拉电阻接+5伏时,被钳位在高 电平状态。 键盘中有无按键按下是把列线全部置零、行线 读入状态来判断。键盘中哪一个键按下可由列线 逐列置低电平,检查行输入状态来判断。
单片机
图8-3 行列式键盘原理电路
单片机
2.键盘工作方式(如图8-4~8-7所示) 在键盘扫描子程序中完成下述几个功能。 (1)判断键盘上有无键按下 (2)去键的机械抖动影响。 (3)求按下键的键号。 (4)键闭合一次仅进行一次键功能操作。
单片机
图8-4 8155扩展I/O口组成的行列式键盘
单片机
开始 有键闭合否? N 调用子程序延时6ms 调用子程序延时12ms N Y
图 8 5 键 扫 描 子 程 序 框 图
-
有键闭合否? Y 判断闭合键键号 栈 N 闭合键释放否? Y 输入键号 A 返回
单片机
图 8 7 中 断 方 式 键 盘 接 口
-
单片机
3.键盘扫描方式 行列扫描法:在判定有键按下后逐列(或逐行) 置低电平,同时读入行(或列)的状态,如果行 (或列)的状态出现非全1状态,这时0状态的行、 列交点的键就是所按下的键。特点是逐列(或逐 行)扫描查询。这时相应行(或列)应有上拉电 阻接高电平。 行列反转法:只要经过两个步骤就可获得键值。 行列反转法原理如图8-8所示。
单片机
(a)行列反转法第一步
(b)行列反转法第二步
图8-8 行列反转
法原理
单片机
4.行列式键盘接口 通用并行扩展I/O口键盘接口 8031串行I/O口扩展的键盘接口(如图8-9所示)
单片机
图8-9 8031串行I/O口扩展的行列式键盘接口
返回本节