当前位置:首页 > 微机原理加法器实训报告
微机原理及应用课程设计报告
3 主要元器件介绍
3.1 键盘
键盘是微机系统和其他实时控制系统中广泛使用的一种基本输入设备。按键实际上就是一个开关;对大多数键盘而言,为了减少与微机间的连线,简化结构,按键被排成行和列的矩阵形式,称为矩阵键盘。矩阵键盘根据识别键和键盘扫描实现方式的不同又分为两类:编码键盘和非编码键盘。编码键盘主要是用硬件来实现键的识别和扫描,它功能强,可靠,但硬件复杂,一般微机系统使用编码键盘。非编码键盘主要是用软件方法来识别键和绎键,本次课程设计主要应用非编码键盘的基本工作原理,及键盘控制程序的编制方法。
3.1.1 键盘的工作原理
通常可采用两种方法来识别键盘上的闭合键:即行扫描与行反转法,本次课程设计采用的是行扫描法,其基本思想是:将行线接输出端口,列线接输入端口。先将所有的行线输出低电平(A口),读入列线的值(B口),若此时列线上的值全为1,说明无键按下;若有某位为0,则说明对应列上有键按下,这时改变行扫描码,使行线逐行为0,依次输出行扫描码,读入列值。当读入某一列线的值为0时,则可根据此时的行扫描码和列线的值唯一的确定按键的位置,同时也就确定了该键的扫描码。
3.1.2 键盘输入信息的过程
(1)CPU检查是否有键按下;
(2)扫描检查各行和列,找到被按键的键号;
(3)将键号转换成计算机能识别的代码并转入相应的键盘处理程序。
3.1.3键盘扫描(识别键)的过程
(1)识别是否有键按下:方法是使PA0~PA3输出全为0,读B口(列值)PB0~PB3,PB0~PB3中只要有一位为0,就说明有键按下,因为由于上拉电阻接+5V的作用,无键按下时,列线被置成高电平。当某键被按下,该键所在行线和列线接通,所以,当行线为低电平时,对应的列线也为低电平。
(2)消抖动:抖动就是键按下时由于手工操作,键的闭合和断开之间回跳几下才能稳定到闭合的位置,这就称为抖动。抖动问题不解决回引起对闭合键的错误识别,所以当判别出有键按下时应消除抖动。消除抖动的常用方法是在检测到有键按下后,延迟一段时间(通常为20ms),再检查该键是否仍然被按着,若是,才真正认为有键按下,而不是干扰。
(3)确定是哪个键被按下:即确定被按下键的行列号,因此可采用上述的行扫描法。
5
微机原理及应用课程设计报告
(4).根据找到的键号,转去执行该键功能的子程序。
3.2 可编程并行接口8255A
3.2.1 8255简介
并行接口是以数据的字节为单位与I/O设备或被控对象之间传递信息。在实际应用中凡是CPU与外设之间同时需要传递两位以上信息时均需采用并行接口。可编程并行通信接口(8255A)是一个具有两个8位(A口和B口)和两个4位(C口)并行输入/输出端口的接口芯片,为了适应多种数据传送方式的要求8255A设置了3种工作方式:方式0为基本输入输出方式,方式1为选通输入输出方式,方式2为双向传送方式。本次为满足设计需要,将8255A设置为方式0。如表3.2.1所示。
表3.2.1 8255设置方式0 A 组 A口(PA0---PA7) 入 入 入 入 入 入 入 入 出 出 出 出 出 出 出 出 C口(PC4---PC7) 入 入 入 入 出 出 出 出 入 入 入 入 出 出 出 出
B组 B口(PB0---PB7) 入 入 出 出 入 入 出 出 入 入 出 出 入 入 出 出 C口(PC0---PC3) 入 出 入 出 入 出 入 出 入 出 入 出 入 出 入 出 本次课程设计用并行接口8255作为微机与键盘间的接口,采用行扫描法识别键。将键盘
6
微机原理及应用课程设计报告
中的各行与A口PA0~PA3相连,A口为输出;将各列与B口的PB0~PB3相连,B口为输入口。
3.2.2 8255内部结构及引脚功能
8255A的内部结构包括以下几个部分:
如图3.2.1所示,并行输入/输出端口,它有三个输入/输出端口,每个端口8位,都可选择为输入或输出。A端口有一阁位数据输出锁存/缓冲器和一个8位数据输入锁存器;B端口有一个8位数据输出锁存/缓冲器和一个8位数据输入缓冲器;C端口有一个8位数据输出锁存/缓冲器和一个8位数据输入缓冲器。通常A端口和B端口作为输入/输出数据端口,C端口常作
A组 控制 DB 数据 总线 缓冲器 端口A 端口C (高位) 端口C (低位) 读/写 控制 逻辑 B组 控制 端口B PA7~PA0 PC7~PC4 RD WR A0 A1 RESET CS PC3~PC0 PB7~PB0 为控制或状态信息的端口,它可分为两个4位端口。在与外设数据传送中需要联络控制线时,C端口分别与A,B端口配合使用,此时,C端口作控制信号输出和状态信号输入。
各部件的功能如下:
RESET:复位输入线,当该输入端外于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。
CS:片选信号线,当这个输入引脚为低电平时,表示芯片被选中,允许8255与CPU进行通讯。
RD:读信号线,当这个输入引脚为低电平时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。
WR:写入信号,输入引脚为低电平时,允许CPU将数据或控制字写入8255。
D0~D7:三态双向数据总线,8255与CPU数据传送的通道,当CPU 执行输入输出指令时,它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。
PA0~PA7:端口A输入输出线,一个8位的数据输出锁存器/缓冲器, 一个8位的数据输入锁存器。
PB0~PB7:端口B输入输出线,一个8位的I/O锁存器, 一个8位的输入输出缓冲器。 PC0~PC7:端口C输入输出线,一个8位的数据输出锁存器/缓冲器, 一个8位的数据输入缓冲器。端口C可以通过工作方式设定而分成2个4位的端口, 每个4位的端口包含一个4位的锁存器,分别与端口A和端口B配合使用,可作为控制信号输出或状态信号输入端口。
A1、A0:端口地址总线,8255中有端口A、B、C和一个内部控制字寄存器,共4个端口,由A0、A1输入地址信号来寻址。8255引脚如图3.2.2所示。
7
图3.2.1 8255内部结构
图
微机原理及应用课程设计报告
12345678910111213141516171819204039383736353433323130292827262524232221PA4PA5PA6PA7WRRESETD0D1D2D3D4D5D6D7VCCPB7PB6PB5PB4PB3PA3PA2PA1PA0RDCSGNDA1A0PC7PC6PC5PC4PC0PC1PC2PC3PB0PB1PB28255A 图3.2.2 8255引脚图
1.8255A有三种基本的工作方式:方式0、方式1和方式2。
(1)方式O
方式O为基本的输入/输出方式,传送数据时不需要联络信号。A口、B口和c口(或C高4位口及c低4位口)均可独立设置成方式0输入口或方式0输出口。 (2)方式1
方式l为选通输入/输出方式,即需要进行联络的输入/输出。A组、B组的8位口(A口或B口)可被设置为方式1输人口或方式1输出口,而这时要用相应C口的3根线作联络线。 (3)方式2
方式2为双向传送。该方式要使用c口的5根线作联络线。由于c口只有8根线,因
此只能有一组使用方式2确定为A组。当A组被设置成方式2时,A口被设置成双向端口,即既可以输入数据,也可以输出数据,c口的5根线被指定为联络线。
2. 8255A有两种控制字。
一个是方式选择控制字,另一个是对c口进行置位或复位的控制字。这两种控制字都为8位。
方式选择控制字用来设置工作方式。最高位D7为1,作为该控制字的标志。紧接着的4位用来对A组进行设置,最低的3 位用来对B组进行设置。A组可设置成三种工作方式的任一种,因此用了两位(D6、D5)来规定工作方式;而B组只能选择方式1或方式0,所以规定工作方式仅需一位(D2)。D4和D3位分别规定A组的8位口(A口)和4位口(C口高4位)是输入还是输出:
8
共分享92篇相关文档