第6章 单片机的常用外围接口电路.ppt_第1页
第6章 单片机的常用外围接口电路.ppt_第2页
第6章 单片机的常用外围接口电路.ppt_第3页
第6章 单片机的常用外围接口电路.ppt_第4页
第6章 单片机的常用外围接口电路.ppt_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第六章单片机常用外围接口电路、6.1键盘接口、6.2显示接口、6.3显示接口、6.1单片机与键盘的接口技术、键盘:单片机系统中输入和修改控制参数的基本输入设备。键盘分类:按编码方式可分为编码键盘和非编码键盘。按键组的连接方式可分为独立连接键盘和矩阵连接键盘。6.1.1概述键盘输入的主要对象:各种键或开关。1独立键盘的每个按键都是独立的,并与输入输出线相连,中央处理器可以直接读取输入输出线的高低电平状态。其优点是硬件和软件结构简单,按键判断速度快,使用方便。缺点是它占用了更多的输入/输出端口。适用场合:主要用于设置控制键和功能键。独立键盘的连接图如图所示,适用于按键较少的场合。当没有按键时,所有

2、数据输入线都处于高电平;当按下任何键时,与之相连的数据输入线将变为低电平;通过相应的指令,可以判断一个键是否被按下。矩阵连接的键盘按键排列成矩阵,每个按键位于矩阵行/列的节点。中央处理器向连接到行(列)的输入/输出线发送已知电平的信号,然后读取列(行)线的状态信息。逐行扫描以获取键码。其特点是很多键占用较少的输入输出端口,硬件资源使用合理,但键判断速度慢。适用场合:主要用于设置数字键,适用于多键的场合。4行4列矩阵键盘连接图如右图所示。这个键盘适合动态扫描识别。扫描模式:低电平扫描(回送线必须拉高电平)和高电平扫描(回送线必须拉低电平)。下图显示了低电平扫描电路。3.薄膜开关的特点:导线与开关

3、之间无需焊接,结构简单,体积小,防尘、防水、抗有害气体侵蚀,寿命长,可靠性高。用途:与按键键盘类似,多个薄膜开关的内部电路也可以按独立或矩阵设计,原理与普通键盘相同。(1)开关状态的可靠输入。必须消除按键抖动。可以采用硬件和软件方法,硬件方法是在按键输入通道上增加去抖动电路;在软件方法中,键盘状态的监控方法被延迟1020毫秒(2)。(3)键盘编码方法。(4)键盘控制程序的编写。6.1.3键盘接口功能:识别键盘上按下的按键。分类:(1)编码键盘:采用专用的编码/解码装置,按下的键由该装置解码,输出相应的键码/键值。它的特点是硬件开销增加,编码固定,但编程简单。适用于大型键盘。6.1.2使用键盘时

4、必须解决的问题,(2)非编码键盘:采用软件编码/解码的方法,通过扫描,判断并输出每个按键对应的键码/键值。它的特点是没有硬件开销和灵活的编码,但编程复杂,占用CPU时间。它适用于小型键盘,特别是单片机系统。键盘。1键盘接口的工作原理为矩阵键盘,如上一页图所示,键盘的行线X0X3通过电阻连接到5V。当键盘上的no键关闭时,所有扫描线和回送线都断开,并且回送线处于高电平,不管扫描线处于什么状态。当键盘上的一个键被关闭时,扫描线和与该键对应的回送线被短路,并且可以确定回送线和变为低电平的扫描线的交点处的键被关闭。中央处理器扫描键盘的方式:随机程序控制方式(中央处理器空闲时扫描键盘)、定时控制方式(定

5、时扫描键盘)和中断方式。中央处理器确定键盘上闭合键的键号的方法是根据扫描线和回送线的状态计算,或者根据行线和列线的状态计算。2键输入程序的设计方法(1)判断键盘上是否有一个键关闭;(2)消除按键的机械抖动;(3)确定关闭键的物理位置;(4)获取关闭键的号码;(5)确保中央处理器只处理一次按键关闭。3键盘接口模式(1)独立键盘接口(静态模式)特点:结构简单,每个按键都连接到单片机的输入输出线上,通过查询输入线可以识别每个按键的状态。以MCS-51单片机系统为例,设计了一个8键独立键盘。解决方案:在MCS-51中,8键独立键盘的电路连接如下图所示。8个按键被上拉电阻上拉后,分别连接到MCS-51单

6、片机P1端口的8条输入输出线(P1.0P1.7)。在没有按键的情况下,P1.0P1.7线路输入全部为高电平。当按下一个键时,连接到该键的输入/输出线将接收低电平输入,而其他键的输入线仍将保持高电平输入。P1端口的八条输入输出线由与非门74LS30逻辑“与非”,然后由非门74LS04进行信号转换,再连接到MCS-51的管脚,使键盘可以通过中断进行处理。在中断服务程序中,延迟20毫秒以消除按键抖动,然后查询每个按键,找到按键,并转到相应的处理程序。主要程序如下:ORG 0000H LJMP MAIN ORG 0003H外部中断0中断服务入口地址LJMP INT转接中断服务机构0100H main

7、: SETB EA;开放总中断允许SETB EX0;打开INT0中断SETB IT0;下降沿的有效中断服务程序列表如下:INTI呼叫D20延迟去抖MOV P1,# 0FFHP1港发送所有1值MOV A,P1;读取P1端口各引脚的CJNE A、#0FFH、CLOSE验证是否有关闭AJMP INT0的键;无按键,关闭: JNB ACC.7,键7;查询7号键JNB ACC.6,键6;查询6号键JNB ACC.5,KEY5查询五号键JNB四号键;查询4号键JNB ACC.3,键3;查询3号键JNB ACC.2,键2;查询2号键JNB ACC.1,键1;查询1号键JNB ACC.0和键0;询问钥匙号码0

8、 int0:retikey733607号键处理器,P1 71: MOV A键;再次读取P1端口的管脚jnbacc.7和func71确认钥匙是否释放RETI钥匙6:其他密钥处理程序D20:(2)矩阵键盘界面行反转法,矩阵键盘按键识别方法包括行反转法和扫描法。行反转方法需要两个双向输入/输出端口来分别连接行和列线。步骤如下:(1)从行输出所有的“0”,在列行读取,判断是否按键。(2)如果按下一个键,输出读入的列行并读取逐行的值。(3)操作在第一步骤中读取的列线值和在第二步骤中读取的行线值,以获得表示该键的唯一特征值。线反转方法以输入线和输出线反向使用而命名。优点是关键判断速度快,而且可以做两次。例

9、如,请为8051微处理器设计一个由4行4列键阵列组成的键盘。解决方案:44矩阵键盘的电路连接如下图所示。P2端口的低4位用作输出线。P1端口的低4位用作输入线,通过74LS21执行逻辑相位后,输入线作为外部中断源8051输入。当一个键被按下时,它将导致一个中断。中断服务程序以区分按下的键。(1)查询关闭键或键子程序的位置子程序,用于确定每组行中的哪一位为0,是否有多个零。在调用之前,从一组行中读取的数据应该存储在累加器a中。当KEYR子程序返回时,一组行中0的位置(03)被保存在R3中。在按键关闭导致中断后,执行中断服务程序。KEYR子程序如下:KEYR:CJNE A,#0EH,TESTP11

10、测试P1.0 MOV R3,# 0;P1.0=0,表示待按的输入线为P1.0 LJMP FINISH回到测试11:CJNE A,#0DH,测试12;测试p1.1movr3,# 1ljmp完成测试testp12:cjne a,# 0fbh,测试p13。测试p1.2movr3,# 2ljmp完成测试p1:cjne a,# 07h,完成。测试P1.3 MOV R3,#3完成:RET,(2)在中断服务程序开始时,应使用软件延迟来消除按键抖动,然后按下的按键应被处理。中断服务程序如下:ORG 1000H INT11:LCALL呼叫延迟;延迟去抖动MOV,P1;读取输入线ANL # 0FH;判断是否有一个

11、键闭合CJNE A,#0FH,测试;如果一个键被关闭,转到判断键程序RETI;无钥匙关闭,返回测试: MOV乙,甲;临时存储LCALL KEYR调用读取子程序MOV 40H,R3;暂时存放在P2 MOV,40H机组# 0FH在输出行写1 MOVP1;将数据MOV、P2写入输入行;读取输出线LCALL KEYR调用读取子程序XCH A,R3交换A ORL 40H,A;得到RETI的关键特征值。中断程序完成后,密钥特征值存储在40H单元中。该键的输出行号位于40H单元的高4位,其输入行号位于低4位。之后,根据40H单元的内容查表,得到相应按键的代码,可以显示或进行其他处理。(3)抖动消除延时子程序

12、利用中央处理器的空闲模式,通过定时器T1实现延时,定时器T1必须预先设置,以获得所需的延时时间。晶体振荡器的频率为6MHz,延迟时间为20毫秒。计时时间为(216TC)6/12=20103s,初始值为TC=25536=63C0H。方案如下:TOMD :号,# 11H模式1定时MOV TL1,# 0C0H定时器1计时初始值movt1,# 63h setbea打开中断集1;打开定时器1,中断SETB PT1;定时器1是高级中断(由键盘中断调用)setbt1启动定时器ORLPCON,# 1;启动空闲模式,此时实际的中央处理器等待CLR TR1以下四条指令只能在延时后定时器被唤醒后执行CLR PT1

13、CLR ET1 RET END,行反转方法适用于扩展键数组。动态扫描方法不仅可以扫描按键阵列,还可以显示按键阵列,应用广泛。动态扫描法原理:通过输出“移动”信号,依次检测每行按键来实现。将行线设置为输出,将列线设置为输入。当没有按键时,所有列输入都是“1”。设计时,将某一行输出为“0”,并读取列线值。如果某一位为“0”,则表示按下了行和列交叉处的键,否则不按任何键;继续扫描下一行(输出下一行为“0”),直到整个扫描完成。用8155实现了4行8列32键键盘接口。解决方案:电路如下页所示。8155的功放设置为输出端口,称为扫描线。PC3PC0被设置为输入端口,称为回送线。8155与MCS-51单片机的接口稍有不同,PA端口的端口地址为7F01H,PC端口的端口地址为7F03H。(3)矩阵键盘接口动态扫描方法,键值编码形式:回送线PC0、PC1、PC2和PC3(每条回送线有8个键,从左到右依次为00H (00H07H)、08H (00H07H)、10H (00H07H)和18H(00H07H),其中,(00H 07H)的具体内容由扫描线确定并保存在R4。(1)扫描是否有按键按下子程序KEY1,并且回扫线的值存储在a中。程序如下:org 1000

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论