《微型计算机控制技术》教案3.2.docVIP

  • 2
  • 0
  • 约 4页
  • 2017-08-18 发布于河南
  • 举报
第 周 第 次课 年 月 日 章 节 名 称 第四章 键盘及其接口技术 授 课 方 式 理论课(* );实践课( );实习( ) 教 学 时 数 2 教 学 目 的 及 要 求 1.熟悉矩阵式键盘的结构原理及其行扫描法。 2.掌握编码器及其编码键盘接口电路。 教 学 重 点 与 难 点 重点:矩阵式键盘的结构原理及其行扫描法。 难点:编码器及其编码键盘接口电路。 教 学 手 段 介绍、讨论与多媒体 教 学 主 要 内 容 时间 分配 复习 矩阵式键盘的结构原理及其行扫描法。 编码器及其编码键盘接口电路。 小结 (5’) (30’) (45’) (5’) 复习思考题 1.分析说明图二进制编码键盘接口电路的工作原 2.结合图分析说明硬件电路消除抖动干 小 结 键盘接口电路可分为非编码键盘和编码键盘两种类型。非编码键盘的硬件电路简单,成本低,但占用CPU的时间较长。编码键盘与之相反,硬件电路复杂、成本高,但使用方便,键盘码产生速度快,占用CPU时间少。 在一般的小型单片机测控系统中主要使用非编码键盘。 第四章 键盘及其接口技术 4.4 非编码矩阵式键盘 1 矩阵式键盘的结构组成 矩阵式键盘又叫行列式键盘,是用I/O口线组成的行、列矩阵结构,在每根行线与列线的交叉处,二线不直接相通而是通过一个按键跨接接通。采用这种矩阵结构只需M根行输出线和N根列输入线,就可连接M×N个按键。通过键盘扫描程序的行输出与列输入就可确认按键的状态,再通过键盘处理程序便可识别键值。 键盘与CPU的接口可采用并行端口8255A、锁存器或缓冲器一类。图5-6给出了一种8×8非编码矩阵式键盘的接口电路。行输出电路由行扫描锁存器74LS273、 反相器与行线X0~X7连接组成,列输入电路由三态缓冲器74LS244与列线Y0~Y7以及上拉电阻组成。X、Y线的每一个交叉处跨接一个键,其键值分别是十进制数的01,02,……,64。该键盘的接口地址为PORT1。 当键盘中无任何键按下时,所有的行线和列线被断开且相互独立,输入线Y0~Y7列都为高电平;当有任意一键按下时,则该键所在的行线与列线接通,因此,该列线的电平取决于该键所在的行线。基于此,产生了“行扫描法”与“线反转法”两种识别方法。 行扫描法又称逐行零扫描查询法,即逐行输出行扫描信号“0”,使各行依次为低电平,然后分别读入列数据,检查此(低电平)行中是否有键按下。如果读得某列线为低电平,则表示此(低电平)行线与此列线的交叉处有键按下,再对该键进行译码计算出键值,然后转入该键的功能子程序入口地址;如果没有任何一根列线为低电平,则说明此(低电平)行没有键按下。接着进行下一行的“0”行扫描与列读入,直到8行全部查完为止,若无键按下则返回。 有时为了快速判断键盘中是否有键按下,也可先将全部行线同时置为低电平,然后检测列线的电平状态,若所有列线均为高电平,则说明键盘中无键按下,立即返回;若要有一列的电平为低,则表示键盘中有键被控下,然后再如上那样进行逐行扫描。 4.5 编码键盘 1 二进制编码器 具有优先级的二进制8位编码器CD4532B 的真值表见表5-1。表示芯片优先级的输入允许端Ei为“0”时,无论编码器的信号输入I7 ~ I0为何状态,编码器输出全为“0”,芯片处于屏蔽状态,同时Eo为“0”,也屏蔽下一级芯片;当输入允许端Ei为“1”时,且编码器的信号输入I7 ~ I0全为“0”时,编码输出也为“0”,但输出允许端Eo为“1”,表明此编码器输入端无键按下,却允许优先级低的相邻编码器处于编码状态;这两种情形下的工作状态端GS均为“0”。 该芯片的8个输入端当中,I0的优先级最高,I7的优先级最低。当有多个键按下时,优先级高的被选中,同时自动屏蔽优先级低的各输入端和下一级芯片(使Eo端为“0”)。比如处于正常编码状态即Ei为“1”时,当I0端为“1”,其余输入端无论为“1”或“0”,编码输出均为二进制000,同时GS端为“1”,Eo端为“0”;而当I0端为“0”,当I1端为“1”时,编码输出则为二进制001;……以此类推,输入端的键值号与二进制编码输出一一对应。 二进制8位编码器CD4532B真值表 2 编码键盘接口电路 图是一种采用两片CD4532B构成的16个按键的二进制编码接口电路。其中由于U1的Eo作为U2的Ei,所以按键S0的优先级最高,S15的优先级最低。U1和U2的输出O2 ~ O0经或门A3 ~ A1输出,以形成低3位编码D2 ~ D0。而最高位D3则由U2的GS产生。当按键S8 ~ S15中有一个闭合时,其输出为“1”。从而S0 ~ S15中任意一个键被按下,由编码位D3 ~ D0均可输

文档评论(0)

1亿VIP精品文档

相关文档