并行输入输出.ppt
文本预览下载声明
并行输入与输出 ;学习目标:
了解并行通信的基本概念;
掌握键盘的基本组成及工作原理;
掌握七段LED显示器的基本组成及工作原理。
技能目标:
能够正确在AT89S52外连接键盘和显示设备。
能够灵活应用典型键盘、显示电路构成各种实际电路;串行通信与并行通信;项目一 矩阵式键盘电路设计
第一部分 项目要求
设计一个4×4矩阵键盘与AT89S52接口电路。要求用查询法读取行列键盘键码,并将键码存入内部RAM 32H单元。
;第二部分 相关知识;一、键盘工作原理
键盘是一组按键的集合,它是最常用的单片机输入设备,操作人员可以通过键盘输入数据或命令,实现简单的人机通信。
根据按键的识别方法分类,键盘有编码和非编码的两种。编码键盘是通过一个编码电路来识别闭合键的键码,如BCD码键盘、ASCII码键盘等;通过软件来识别键码为非编码键盘。
; 由于非编码键盘的电路简单,可以方便地增减键的数量,因此在单片机应用系统中得到广泛的应用。
1、按键电路和抖动的消除
键盘中每个按键都是一个常开关电路。
开关为机械弹性开关,当机械触点断开、闭合时有抖动。 ;消除的办法:
硬件 — 单脉冲触发器,即双稳态触发器或基本R - S触发器。
软件 — 延时,用子程序
2、键盘连接方式
键盘可分为独立式和行列(矩阵式)两类。
(1) 独立式非编码键盘
电路:见图
4只按键分别接到89S52 P1口的4条I/O线上。在没有键按下的情况下, ;89S52;由于上拉电阻的作用,P1.0~P1.3线上输入均为高电平。当有某键按下时,与其相连的I/O线将得到低电平,其他未按之键的输入线上,仍维持其原来的高电平输入。
这种键盘结构的优点是电路简单,编程简单;缺点是当键盘数较多时,要占用较多的I/O线。
这种键盘结构可用程序去掉抖动。
(2) 非编码行列式键盘
为了减少键盘与单片机接口时所占用I/O线的数目,在键数较多时,通常都将键盘排列成行列矩阵形式。 ;即将I/O线的一部分作为行线,另一部分作为列线,按键设置在行线和列线的交叉点上。
行列式键盘的数量为:行线数m乘以列线数n,即可组成m×n个按键的键盘。 见图。
这是一个4×4行列式键盘,按键数量为16个。
矩阵式键盘接口处理的内容:
● 判断键盘中有无键按下的方法是:先向所有连接列线的I/O线输出0;然后,将连接行线的按键状态,由相应的I/O线读入累加器A中。有键按下时对应的行线,输入为0;没有键按下时对应的行线,输入为1。 ;X3;● 求键码的过程是:
依次从一条列线上输出低电平,然后检查各行线的状态。若都为1,说明闭合键不在该列;若有的行线为0,则说明闭合键在该列与为0的行线的交点上。由于每个按键所在的行号和列号不相同,所以,每个按键都按行列号赋予了一个键号。(键值)
列Y3 Y2 Y1 Y0 行X3 X2 X1 X0
1 1 1 0 E 1 1 1 0 E
1 1 0 1 D 1 1 0 1 D
1 0 1 1 B 1 0 1 1 B
0 1 1 1 7 0 1 1 1 7;键号:列×行
EE ED EB E7
DE DD DB D7
BE BD BB B7
7E 7D 7B 77 键值N= 行首键号 + 列号
3.编码键盘按键的处理过程
处理程序分为:程序扫描方式和中断扫描方式。
(1)程序扫描方式,即查询方式。
在单片机应用系统中,对键盘的处理只是CPU工作的一部分。为了能及时发现有键按下,CPU要不断;地调用键盘处理程序,对键盘进行扫描。这种CPU主动调用键盘处理程序的方式,称为程序扫描方式。
程序控制扫描工作方式的工作过程与键盘扫描子程序。
(Ⅰ)判断键盘上有无键按下。其方法为:D0 ~ D3输出0000B(列线),读D4 ~ D7状态(行线),若D4 ~D7为全“1”则键盘无键按下,若不全为“1”则有键按下。
(Ⅱ)去除键的机械抖动影响:在判断有键按下后,软件延时一段时间(5 ~ 10mS)后再判断键盘状态,如果仍为有键按下状态,则认为有一个稳定的键按下,否则按照键抖动处理。 ;(Ⅲ)判别闭合键的键号:对键盘的列线进行扫描,再相应地顺序读出D4 ~ D7的可能状态。
(Ⅳ)CPU对键的一次闭合仅作一次处理,采用的方法为等待键释放以后再将键号送入累加器A中。
(2)中断扫描方式
为了提高CPU的效率,可以让键盘工作在中断扫描方式。有键闭合,产生中断请求信号。消抖、求键号等工作由中断服
显示全部