微机原理 可编程接口芯片8255A及应用
可编程外围接口芯片8255A及其应用作业
可编程外围接口芯片8255A及其应用作业第九章可编程外围接口芯片8255A及其应用作业姓名:王绍辉专业班级:电气0905学号:09090927261.8255A的3个端口在功能上各有什么不同的特点?8255A内部的A 组和B组控制部件各管理哪些端口?答:端口A包含一个8位的数据输出锁存器/缓冲器,一个8为的数据输入锁存器,因此A口作输入或输出时数据均能锁存。
端口B包含一个8位的数据输入/输出锁存器/缓冲器,一个8位的数据输入缓冲器。
端口C包含一个8位的数据输出锁存器/缓冲器,一个8位的数据输入缓冲器,无输入锁存功能,当它被分成两个4位端口时,每个端口有一个4位的输出锁存器。
端口A和端口C的上半部分(PC7~PC4)由A组控制逻辑管理。
端口B和端口C的下半部分(PC3~PC0 )由B组控制逻辑管理。
2.8255A有哪几种工作方式?各用于什么场合?端口A、端口B和端口C各可以工作于哪几种工作方式?答:8255A具有3种基本的工作方式,在对8255A进行初始化编程时,应向控制字寄存器写入方式选择控制字,用来规定8255A各端口的工作方式。
这3种基本工作方式是:方式0—基本输入输出方式:适用于不需要用应答信号的简单输入输出场合。
这种方式A口和B口可作为8位的端口,C口的高4位和低4位可作为两个4位的端口。
方式1—选通输入输出方式:A口和B口作为数据口,均可工作于输入或输出方式。
端口C的6根线用来产生或接受联络信号。
方式2—双向总线I/O方式:只有A口可以工作于这种方式。
端口A工作于方式2时,端口C的5位(PC3~PC7)作A口的联络控制信号。
5.设8255A的A口、B口、C口和控制字寄存器的端口地址分别为80H,82H,84H,86H。
要求A口工作在方式0输出,B口工作在方式0输入,C口高4位输入,低四位输出,试编写8255A的初始化程序。
答:MOV AL,10001010B ;方式控制字OUT 86H,AL6.8255A的端口地址同第五题,要求PC4输出高电平,PC5输出低电平,PC6输出一个正脉冲,试写出完成这些功能的指令序列。
微机原理8255的应用
微机原理8255的应用1. 简介本文档将介绍微机原理中的8255芯片的应用及其相关知识。
8255是一款常用的并行输入输出(PIO)芯片,广泛应用于微机原理的实验和应用中。
本文将从以下几个方面进行介绍:1.8255芯片的功能及特点2.8255芯片的引脚功能3.8255芯片的工作原理4.8255芯片的应用案例2. 8255芯片的功能及特点8255芯片是一种通用的并行输入输出接口芯片,可以提供多种不同的I/O操作模式。
其主要功能如下:•提供三个8位的I/O端口A、B和C,可以通过编程定义其为输入或输出端口。
•支持模式0、模式1和模式2三种工作模式,可以通过编程控制选择不同的模式。
•可以通过编程设置端口的工作模式和数据传输方式。
•可以通过编程控制和操作I/O端口的数据。
8255芯片的主要特点如下:•低功耗设计,适合在嵌入式系统中使用。
•高可靠性和稳定性,能够在不同环境下正常工作。
•兼容性强,可以与多种微处理器和控制器连接使用。
3. 8255芯片的引脚功能8255芯片共有40个引脚,每个引脚的功能如下:•一号引脚(VCC):芯片的供电电源。
•二号引脚(GND):芯片的接地引脚。
•三号引脚(A0)至四号引脚(A1):用于编程选择工作模式。
•五号引脚(CS):芯片的片选引脚,通过将其接地来选择芯片。
•六号引脚(RD):读取端口数据的引脚。
•七号引脚(WR):写入端口数据的引脚。
•八号引脚(RESET):芯片的复位引脚。
•九号引脚至十六号引脚(PA0至PA7):端口A的数据线。
•十七号引脚至二十四引脚(PB0至PB7):端口B的数据线。
•二十五号引脚至三十二号引脚(PC0至PC7):端口C的数据线。
4. 8255芯片的工作原理8255芯片是通过控制寄存器对其进行编程来实现不同功能的。
通过编程控制控制寄存器的值,可以选择端口的工作模式、数据传输方式等。
8255芯片的工作原理如下:1.初始化8255芯片,设置控制寄存器的值。
A12可编程外围接口芯片8255A及其应用.ppt
一、8255A的结构和功能
D7~D0 数据 总线
RD o WR o 读/写 A0 控制 A1 逻辑 RESET CS o
CPU接口
内 A组控制 部
总 线
B组控制 内部逻辑
A口 上C口 下C口
PA7~PA0 PC7~PC4 PC3~PC0
PB7~PB0 B口
外设接口
(一) 数据端口
8255A内部包含3个8位
(4)
PC4
PC0
PC1
端口 B(8)
PB7~PB0
PC2 PC3
PB0
PB1
PB2
1
40
2
39
3
38
4
37
5
36
6
35
7
34
8
33
9
32
10
31
8255A
11
30
12
29
13
28
14
27
15
26
16
25
17
24
18
23
19
22
20
21
(a)
(b)
8255内部结构和引脚图
(a) 8255A内部结构;(b) 8255A外引脚图
PA4 PA5 PA6 PA7 WR
RESET
D0 D1 D2 D3 D4 D5 D6 D7 VCC PB7 PB6 PB5 PB4 PB3
可编程并行接口芯片应具有的功能:
(1) 具有两个以上的输入/输出数据端口(锁存/缓冲); (2) 每个数据端口有与CPU用应答方式交换信息所必须 的控制和状态信息;也有与外设交换信息所必须的控制和 状态信息; (3) 通常每个数据端口还具有能用中断方式与CPU交换信 息所必须的电路; (4) 具有进行片选和读写控制的电路; (5) 可编程(由程序来选择数据端口,数据传送方向, 交换信息的方式等)。
可编程并行接口芯片8255A
(1)输入输出端口
可编程并行接口芯片8255A
3个8位的并行端口A,B,C,其中,端口A和端口B均有一个8位数据输出锁存/缓冲器和一个8位数据输入 锁存器,端口C有一个8位数据输出锁存/缓冲器和一个8位数据输入缓冲器。端口C被分成高4位和低4位,可作 为基本输入输出端口、状态或控制信息传送端口,分别与端口A和端口B配合工作。
⑤ 整个写周期结束后地址信号消失。
2 方式1
可编程并行接口芯片8255A
方式1是一种选通式输入输出工作方式,其特点是与外设传送数据时,需要设置联络信号。在这种方 式下,端口C的部分位用作选通控制信号,控制端口A和B的数据输入输出。
(a)
(b)
8255A在方式1时的输入信号
(a)端口A在方式1时的输入信号 (b)端口B在方式1时的输入信号
可编程并行接口芯片8255A
1.3 8255A的工作方式
1 方式0
方式0是8255A的基本输入输出方式,其特点是 无需设置联络信号,8255A就可以直接与外设进行简 单的无条件数据传送。方式0适用于无条件数据传送 或查询式数据传送。
在这种方式下,3个端口都可以设置为输入输出 端口,但不能同时既作为输入又作为输出。其中,端 口A和B为8位端口,输入、输出均有锁存能力;端口 C可分为两个4位端口(高4位和低4位),仅对输出有 锁存能力。
微机原理与接口技术
可编程并行接口芯片8255A
1.1 8255A的引脚及功能
8255A是40引脚的双列直插式芯片。
读信号,输入,用于控制数据流的读出, 低电平有效。该信号有效时,表示允许 CPU 从 8255A 端 口 中 读 取 数 据 或 状 态 信 息。
片选信号,由CPU输入,低电平有效。 该 信 号 有 效 时 , 表 示 8255A 被 选 中 , 允 许与CPU交换信息。
8255实验-微机原理与接口技术
实验线路连接
(1) 8255A芯片PC0~ PC7插孔依次接K1~ K8。
(2) 8255A芯片PB0~PB7插孔依次接L1 ~ L8。
(3) 8255A的CS插孔CS-8255接译码输出Y7插
孔。
要求: ① 读懂系统程序中有关 8255A 的部分。
包括:端口地址、初始化编程、 二极管发光情况与开关状态间的对应关系
并使其根据开关 K1~ K8 的状态发光。 · 以 K8 作为总开关,
若 K8打开(0),则 L1~ L8同时熄灭; 若 K8闭和(1),则 L1~ L7由K1~ K7控 制。
IOCONPT EQU 0073H IOCPT EQU 0072H IOBPT EQU 0071H IOAPT EQU 0070H
② 执行程序,并进行观察,记录。 PC 口 8 位接 8 个开关 K1~ K8 , PB 口 8 位接 8 个 LED 发光二极管 L1~ L8 , 并使其根据开关 K1~ K8 的状态发光。
③ 改变电路接法并修改程序,要求实现:
· PA 口 8 位接 8 个开关 K1~ K8 ,
PB 口 8 位接 8 个发光二极管 L1~ L8
IOLED: CALL FORMAT CALL LEDDISP
MOV AL,90H B口输出
;10010000 写方式控制字 方式0 A口输入
MOV DX,IOCONPT
OUT P
IOLED1: MOV DX,IOAPT
IN AL,DX
MOV DX,IOBPT
OUT DX,AL
并行接口 8255 的应用
1、实验目的 掌握8255A和微机接口方法。 掌握8255A的工作方式和编程原理。
2、实验内容
8255A应用举例
4 8255A应用举例在很多应用系统中,用LED作状态指示器具有电路简单、功耗低、寿命长、响应速度快等特点。
LED显示器是由若干个发光二极管组成显示字段的显示器件,应用系统中通常使用7段LED显示器,如图8-15所示。
b)c)a)共阴型b)共阳型c)管脚分布图8-15 七段数码管以共阳极为例,各LED公共阳极接电源,如果向控制端a,b,c, …,g,dp送入00000011信号,则该显示器显示“0”字型。
控制显示各数码加在数码管上的二进制数据称为段码,显示各数码共阴和共阳七段LED数码管所对应的段码见表8-3。
表8-3 七段LED数码管的段码下面用8255A 作为LED 数码管及4位开关与CPU 的接口,要求按照开关的二进制编码状态,显示相应的数码。
如图8-16所示。
图8-16 80x86CPU 通过8255A 同开关与7段LED 显示器的接口设当开关K3、K2、K1、K0未合上时,各开关控制的位线为高电平1;开关接通时,各开关控制的位线为低电平0。
各开关状态、数字及LED 段码的关系如表8-4所示。
表8-4 开关状态、数字及LED 段码的关系例如:当K2未合上,K3、K1、K0均合上接通时状态为0100,表示数字4,显示代码应为99H。
设8255A端口地址为0FFFAH、0FFFBH、0FFFCH、0FFFDH。
源程序如下:DATA SEGMENTXSHDM DB 0C0H, 0F9H, 0A4H, 0B0H, 99H, 92H, 82H, 0F8H, 80HDB 98H, 88H, 83H, 0C6H, 0A1H, 86H, 8EHCNT DB 10 DUP(?)DATA ENDSCODE SEGMENTASSUME CS:CODE , DS:DA TASTART: MOV AX,DA TAMOV DS,AX;以上为源程序结构通用部分.;下面为8255A初始化程序块MOV AL,82HMOV DX,0FFFDHOUT DX,ALLOP: MOV DL,0FBHIN AL,DX ;读B口AND AL,0FHMOV BX,OFFSET XSHDMXLATMOV DL,0FAHOUT DX,AL ;写入A口CALL DELAYJMP LOPMOV AH, 4CHINT 21HDELAY PROCMOV DX,0500HLOP1: MOV CX,0FFHLOP2: NOPNOPLOOP LOP2DEC DXJNZ LOP1RETDELAY ENDPCODE ENDSEND START。
可编程芯片8255A及其应用
8255A芯片在工业控制中的应用
在工业控制中,8255A芯片可以用于采集各种传感器的数据。
传感器数据采集
执行器控制
安全监控
自动化生产
通过编程,8255A芯片可以控制各种执行器,如电机、阀门等。
8255A芯片可以用于监控工业生产过程中的各种安全参数。
通过与PLC等其他工业控制设备的配合,8255A芯片可以实现自动化生产流程的控制和管理。
OUT 83H ;将累加器A的内容输出到83H端口
01
02
03
编程实例
HLT ;结束程序
编程实例
这是一个简单的8255A编程示例,用于初始化芯片并设置一个特定的端口。在这个例子中,我们使用汇编语言进行编程,通过`OUT`指令将累加器A的内容输出到83H端口,然后通过`HLT`指令结束程序。
01
02
03
04
05
根据项目需求和开发环境,选择合适的编程语言。
2.选择编程语言
使用所选的编程语言编写代码,实现8255A芯片的控制逻辑。
3.编写代码
完成基本功能后,进行全面的测试,并根据测试结果优化代码。
5.测试和优化
将代码编译成可在芯片上运行的格式,并通过仿真或实际硬件进行调试。
4.编译和调试
8255A芯片在微机接口中的应用
作为微机的接口,8255A芯片可以实现与其他设备或系统的数据通信。 通过8255A芯片,微机可以扩展其I/O端口,从而连接更多的外部设备。 在微机接口中,8255A芯片的并行处理能力可以提高数据处理速度。 通过编程,8255A芯片可以用于实时控制微机系统的某些功能。 数据通信 扩展I/O端口 并行数据处理 实时控制
可靠性更强
应用领域拓展
微机原理CH6 可编程外围接口芯片8255A及应用(ok)
第六章
2、方式 1(选通输入/输出工作方式) 适用场合 查询方式或中断方式的数据传送。如:与打印机的接 口。 方式1的基本功能 ① 两个选通的8位数据端口,可输入或输出 ; ② 每个端口有三条控制线(C口提供,固定指定的,不 能用程序改变) ③ 若只有一个口工作在方式1,余下的13位可工作在方 式0; ④ 方式1的两个8位数据口的输入、输出数据都能锁存。
PB7~PB0
PC1
INTE B PC2
OBFB ACKB
PC0 WR
INTRB
29
第六章
各控制联络信号的含义
① OBF (Output Buffer Full):输出缓冲器满信号 8255A送给外设的选通信号,低电平有效。 当它为低电平时,表示CPU已将数据写到8255A的指定 输出端口,外设可以将数据取走。OBF 由输出命令 WR 的上 升沿置成低电平,而外设应答信号 ACK 将其恢复成高电平。 PC7输出A口的输出缓冲器满信号,PC1输出B口的输出缓冲 器满信号。 ② ACK (Acknowledge):外设的应答信号 低电平有效,由外设送给8255A。 当它为低电平时,表示CPU输出到8255A的A口或B口的 数据已被外设取走。PC6输入A口的应答信号,PC2输入B口 的应答信号。
8255
4
第六章
二、8255A的结构和功能
5
第六章
1、数据端口A、B和C
8255A内部包含3个8位的输入输出端口A、B和 C,通过外部的24根线与外设交换数据或通信联络( 其中C口被分成C口上半部分和C口下半部分),C口 又可分为两个4位端口。
6
第六章
每个数据端口在不同的工作方式下的具体功能:
中断允许信号
第十章可编程外围接口芯片8255A及其应用
树 立 质 量 法 制观念 、提高 全员质 量意识 。20.10.2120.10.21Wednesday, October 21, 2020
人 生 得 意 须 尽欢, 莫使金 樽空对 月。16:59:3416:59:3416:5910/21/2020 4:59:34 PM
安 全 象 只 弓 ,不拉 它就松 ,要想 保安全 ,常把 弓弦绷 。20.10.2116:59:3416:59Oct-2021-Oct-20
树 立 质 量 法 制观念 、提高 全员质 量意识 。20.10.2120.10.21Wednesday, October 21, 2020
人 生 得 意 须 尽欢, 莫使金 樽空对 月。16:59:3416:59:3416:5910/21/2020 4:59:34 PM
安 全 象 只 弓 ,不拉 它就松 ,要想 保安全 ,常把 弓弦绷 。20.10.2116:59:3416:59Oct-2021-Oct-20
A组:端口A + 端口C的高4位 B组:端口B + 端口C的低4位
由CS引脚选中,进行端口编程、读或写 内部寄存器
A、B、C数据寄存器(读/写) 命令字寄存器
8255A的结构和功能
PA
八位输出锁存/缓冲器、八位输入锁存器
PB
八位输出锁存/缓冲器、八位输入缓冲器
PC
八位输出锁存/缓冲器、八位输入缓冲器 可以被分成两组4位的输入输出端口使用
作 业 标 准 记 得牢, 驾轻就 熟除烦 恼。2020年 10月 21日 星期 三4时 59分34秒 16:59:3421 October 2020
好 的 事 情 马 上就会 到来, 一切都 是最好 的安排 。下午 4时59分 34秒 下午4时 59分 16:59:3420.10.21
9.第九章 可编程外围接口芯片8255A及其应用
☀ 8086系统中,若8255的8根数据线接在系统数据线的低八位,8255占用连
续4个I/O偶地址:X 0, X 2, X 4 , X 6 A2 A1 A0 … 8086 A1 A0 0 … 8255 0 0 0 ……. 端口A (X 0) 0 1 0 ……端口B (X 2) 1 0 0 ……端口C (X 4) 1 1 0 …….控制口 (X 6)
1
1
0
1
C口
控制寄存器
◆ 8255A的A1A0、/RD、/WR、/CS组合起来实现的基本操作如表9-1所示。
表9-1
8255的基本操作
◆ 与地址总线的连接:与8253一样, ♣ 在8位数据总线CPU系统中,端口输入端A1A0分别与地址总线A1A0相连即可。 ♣ 在16位数据总线CPU系统中,地址总线A2A1连到8255A的A1A0端。若 8255A的 D7~D0接在CPU 的低8位数据线上,则要用偶端口地址来寻址8255A(A0=0);而 D7~D0 接在CPU 的高8位数据线上,则要用奇端口地址来寻址8255A(A0=1)。
二、8255A的控制字
8255A有两类控制字:
① 方式选择控制字(用于各个端口) ② 置位/复位控制字(用于对C口的任一位 的置位/复位操作) 这两类控制字,都被写入一个控制寄存器中。 8255A用控制字的D7位(=1或0)来区分这两类
控制字。 D7位 称为标志位(或特征位)
D7=1:方式选择控制字
第九章 可编程外围接口芯 片8255A及其应用
9-1 8255A的工作原理 9-2 8255A的应用举例
9-1 8255A的工作原理
一、8255A的结构和功能
8位数据端 口PA
端口 选择 地址 线
9可编程外围接口芯片8255A及其应用
• INTR(Interrupt Request) 中 断 请 求 信 号 , 由 8255A向CPU发出,高电平有效。只有当STB、IBF 和INTE三者都高时,INTR才能被置为高电平。也
就是说,当选通信号结束,已将输入设备提供的
一个数据送到输入缓冲器中,输入缓冲器满信号 IBF 已 变 成 高 电 平 , 并 且 中 断 是 允 许 的 情 况 下 , 8255A才能向CPU发出中断请求信号INTR。CPU响 应中断后,可用IN指令读取数据,读信号RD的下 降沿将INTR复位为低电平。INTR通常与8259A的 一个中断请求输入端IR相连,通过8259A的输出 端 INT 向 CPU 发 中 断 请 求 。 A 口 的 中 断 请 求 信 号 INTRA由PC3引脚输出,B口的中断请求信号INTRB 由PC0引脚输出。
• STB(stobe)选通信号,低电平有效,由外部输入 。当该信号有效时,8255A将外部设备通过端口数 据线PA7~PA0或PB7~PB0输入的数据送到所选端口的 输入缓冲器中。端口A的选通信号STBA从PC4引入, 端口B的选通信号STBB由PC2引入。
• IBF(Input Buffer Full)输入缓冲器满信号,高电 平有效,是8255A送给外设的状态信号,当它有效 时,表示输入设备送来的数据已传送到8255A的输 入缓冲器中,即缓冲器已满,8255A不能再接收别 的数据。IBF由STB所置位,由读信号的后沿(也就是 上升沿)将其复位,复位后表示输入缓冲器已空,又 允许外设将一个新的数据送到8255A。PC5作端口A 的输入缓冲器满信号IBFA,PC1作B口的输入缓冲器 满信号IBFB。
8255A 的 端 口 A 和 端 口 C 的 上 半 部 分 (PC7~PC4) 由 A 组 控 制 逻 辑 管 理 , 端 口 B 和 端 口 C 的 下 半 部 分 (PC3~PC0) 由 B 组 控 制 逻 辑管理。
可编程外围接口芯片8255A及其应用ppt课件
2020/12/31
× ×× 1 1
功能
对端口A 读
对端口B 读
输
对端口C 读 非法,不能对控制口读 入
对端口A 写
对端口B 写
输
对端口C 写
对控制口 写
出
数.据缓冲器为三态
断 开
端口 A B C
控制口
10
⑵ 面向外设的引脚信号及功能 • PA0-PA7:A组数据信号,用来连接外设; • PB0-PB7:B组数据信号,用来连接外设; • PC0-PC7:C组数据信号,用来连接外设或者作为控制信号。
2020/12/31
.
3
一、 8255A的结构和功能
图9.1 8255A的引脚图
2020/12/31
.
4
1.三个数据端口A,B,C 这三个端口均可看作是I/O口,但 它们的结构和功能也稍有不同。 ·A口:是一个独立的8位I/O口, 它的内部有一个8位的数据输出锁 存器/缓冲器,一个8位的数据输 入锁存器,A口输入输出时数据均 能锁存。
2020/12/31
.
6
3.数据总线缓冲器 8位的双向的三态缓冲器。作为8255A与系统总线连接的界面,输入/输 出的数据,CPU的编程命令以及外设通过8255A传送的工作状态等信息, 都是通过它来传输的。 4.读/写控制逻辑 读/写控制逻辑电路负责管理8255A的数据传输过程。它接收片选信号及 系统读信号、写信号、复位信号RESET,还有来自系统地址总线的口地 址选择信号A0和A1。
2.A组和B组的控制电路
这是两组根据CPU命令控制8255A工作方式的电路,这些控制电路内部设有控
(完整word版)8255A芯片简介及其应用
8255A芯片简介及其应用班级:姓名:学号:一、简介8255是Intel公司生产的可编程并行I/O接口芯片,有3个8位并行I/O口。
具有3个通道3种工作方式的可编程并行接口芯片(40引脚)。
其各口功能可由软件选择,使用灵活,通用性强。
8255可作为单片机与多种外设连接时的中间接口电路。
二、内部结构8255作为主机与外设的连接芯片,必须提供与主机相连的3个总线接口,即数据线、地址线、控制线接口。
同时必须具有与外设连接的接口A、B、C口。
由于8255可编程,所以必须具有逻辑控制部分,因而8255内部结构分为3个部分:与CPU连接部分、与外设连接部分、控制部分。
1)与CPU连接部分根据定义,8255能并行传送8位数据,所以其数据线为8根D0~D7。
由于8255具有3个通道A、B、C,所以只要两根地址线就能寻址A、B、C 口及控制寄存器,故地址线为两根A0~A1。
此外CPU要对8255进行读、写与片选操作,所以控制线为片选、复位、读、写信号。
各信号的引脚编号如下:(1)数据总线DB:编号为D0~D7,用于8255与CPU传送8位数据。
(2)地址总线AB:编号为A0~A1,用于选择A、B、C口与控制寄存器。
(3)控制总线CB:片选信号、复位信号RST、写信号、读信号。
当CPU 要对8255进行读、写操作时,必须先向8255发片选信号选中8255芯片,然后发读信号或写信号对8255进行读或写数据的操作。
2)与外设接口部分根据定义,8255有3个通道A、B、C与外设连接,每个通道又有8根线与外设连接,所以8255可以用24根线与外设连接,若进行开关量控制,则8255可同时控制24路开关。
各通道的引脚编号如下:(1)A口:编号为PA0~PA7,用于8255向外设输入输出8位并行数据。
(2)B口:编号为PB0~PB7,用于8255向外设输入输出8位并行数据。
(3)C口:编号为PC0~PC7,用于8255向外设输入输出8位并行数据,当8255工作于应答I/O方式时,C口用于应答信号的通信。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第七章
参考程序片断: MOV AL, 10010000B ; 控制字 OUT 0F6H, AL ; 写入控制字 LP: IN AL, 0F0H ; 从A口读入开关状态 OUT 0F2H, AL ; B口控制LED,指示开关状态 CALL DELAY1S JMP LP
思考:
若地址大于FFH,则程序应该怎么改?
dp g f e d c b a
g
d
b
c
DP
g f e d c b a 1
阴 极
0
1
1
0
1
36
1
0
第七章
十六进制数共阴极的七段显示码表
十六进制数字
0 1 2 3 4 5 6
七段显示码
3FH 06H 5BH 4FH 66H 6DH 7DH
十六进制数字
8 9 A b C d E
七段显示码
7FH 6FH 77H 7CH 39H 5EH 79H
内部逻辑 6
端口C (低4位)
B 组B 端口
PC3~PC0
(8位)
PB7~PB0
CPU接口
外设接口
第七章
8255A与系统的连接示意图
7
第七章
3、各部分功能简介
数据端口
A、B、C:可用来和外设传送信息;每
个端口8位,通过编程设定其为输入口或输出口;
工作方式 0 1 8255数据端口功能表 B口 A口 C口
教材第九章内容
第七章
可编程外围接口芯片8255A及其应用
7.1 8255A的工作原理
一、8255A的结构和功能
二、8255A的控制字及初始化编程 三、8255A工作方式和C口状态字
7.2 8255A的应用举例
1
第七章
7.1 8255A的工作原理
8255A综述
8255A是一种通用的可编程并行I/O接口芯片,一
63H, AL AL, 00001011B 63H, AL AL, 00001010B 63H, AL
OUT MOV OUT MOV OUT
14
8255
第七章
思考:例2中若要求输出方波信号,则程序片段为: AGAIN:MOV OUT CALL AL,00001011B 63H,AL DELAY ;调用延时子程序
MOV
OUT JMP ……
AL,00001010B
63H,AL
CALL DELAY
AGAIN
;调用延时子程序
15
第七章
三、8255A工作方式和C口状态字
8255A有3种工作方式:
方式0:基本的输入输出方式
方式1:选通输入输出方式 方式2:双向总线I/O方式
各端口的工作方式,是通过编程向控制口写入方
9
第七章
二、8255A的控制字及初始化编程
8255A的初始化编程,通过输出指令让CPU对8255A
控制字寄存器写数据,来设置8255A的初始状态
8255A有两类控制字
1、方式选择控制字:
选择各端口的工作方式及操作类型(输入\输出) 2、置位复位控制字: 对C端口的任一位进行置位或复位操作
10
PB7~PB0
PC1 INTE B PC2 OBFB ACKB
PC0
WR
INTRB
23
第七章
24
第七章
选通输入/输出方式可以分为3种情况
(3)选通输入/输出方式 8255A工作于方式1时,允许对A口和B口分别定义,一 个端口作输入,另一个端口作输出。
PA7~PA0 PC4
D0
RD 控制字
D7 D6 D5 D4 D3 D2 D1
2
基本输入\输出 基本输入\输出 基本输入\输出 输出锁存 输出锁存 输出锁存 输入三态 输入三态 输入三态 应答式输入\输出 应答式输入\输出 作为A口、B口的 输入输出均锁存 输入输出均锁存 控制位及状态位 作为A口、B口的 应答双向输入输出 控制位及状态位 输入输出均锁存 8 第七章
8255A的基本操作
方式2的主要功能:
①只有A口可以工作于这种方式。 ②在这种方式下,CPU与外设交换数据时,可在单一的8 位端口数据线PA7~PA0上进行,既可以通过A口把数据
传送到外设,又可以从A口接收从外设送过来的数据,
而且输入和输出数据均能锁存。 ③输入和输出过程不能同时进行。
27
第七章
控制字
D7 1 D6 1 D5 × D4 × D3 × D2 1/0 D1 1/0 D0 1/0
A
28
第七章
4、C口状态字
当8255A工作于方式0时,C口各位作输入输出用。
当8255A工作于方式1和方式2时,C口产生或接收
与外设间的联络信号。此时,读取C口的内容可使 编程人员测试或检查外设的状态,用输入指令对C 口进行读操作就可读取C口的状态,
即:IN AL,PC口
29
第七章
C口的状态字有以下几种格式: (1)方式1状态字
硬 件 电 路 设 计 图
32
பைடு நூலகம்
第七章
分析:
确定各端口地址
A口:F0H
控制字:
B口:F2H
C口:F4H
控制口:F6H
A口工作于方式0输入,B口为方式0输出,C口未
用,控制字中与C口对应的位可以被置为0,写入 控制端口F6H的控制字为:10010000B
要求功能的实现:
从A口读入的数据直接输出至B口即可满足要求
若要“开关断开,相应的LED熄灭”,程序怎么改
?
34
第七章
【小结】
(1)CPU与8255A之间数据传输以BYTE为单位;
(2)8255A的方式0使用步骤: 确定地址; 写控制字(初始化); 输入输出操作
35
第七章
例2:数码管与8255A接口举例
1、七段LED的工作原理和接口电路
DP
a f e 数字【5】
7
07H
37
F
71H
第七章
2、数码管的显示方式
(1)静态显示方式
I/O(1) I/O(2) I/O(3) I/O(4)
38
第七章
这种方式的共阴极或共阳极点连在一起,接地
或接+5V,每一个数码管与一个并行口相连。所以
在同一时间内,每个数码管可以显示不同的内容。 但每个数码管都需要一个8位的I/O口,占用I/O太 多,成本高。
18
第七章
选通输入/输出方式可以分为3种情况 (1)选通输入方式 A口、B口都工作在选通输入方式 其端口控制字、状态、联络信号如下图所示。
控制字
D7
1
方式1 A口
D5
1
D6
0
D4
1
D3
1/0
D2
×
D1
×
D0
×
PA7~PA0 INTE A 选通信号 PC4 PC5 PC3 STBA
标志位
PC6,7 1=输入 0=输出
39
第七章
(2)动态显示方式
40
第七章
这种方式数码管的数据端与一个I/O口并连,
而每个数码管的控制端(公共端)分别与另一个
I/O口的某一位相连,可通过程序控制,使得在某
一时间段内只让某个数码管显示,下一时间段内
让另一个数码管显示,这样让4个数码管轮流显示 ,只要轮流的速度快,人眼不会感到闪烁,好像 在同时显示。
中断允许信号
IBFA
缓冲器满信号 INTRA 中断请求信号 I/O
A口方式1 A口输入
RD
19
PC6,7
第七章
方式1 B口
控制字
D7 1 D6 × D5 × D4 × D3 × D2 1 D1 1 D0 ×
PB7~PB0
INTE B 选通信号 PC2 PC1
STBB
IBFB 缓冲器满信号 INTRB 中断请求信号
分析:控制口地址:93H
工作方式控制字为:1000 1010B 即8AH
初始化程序片断:
MOV AL,8AH OUT 93H,AL
13
第七章
例2:设一片8255A的端口地址为60H~63H,要求从
PC5的引脚输出一个正脉冲。
分析:先将PC5清零,再将其置1,最后再清零
MOV
PC5
AL, 00001010B
输入状态字:
D2~D0
输出状态字:
D2~D0
30
第七章
(2)方式2状态字
方式1举例
31
第七章
7.2 8255A的应用举例
例1:在某一系统中,有8个开关K7~K0,要求每隔1S检测 它们的通断状态,并随时在发光二极管LED7~LED0上显 示出来。要求:开关断开,相应的LED点亮;开关合上 ,LED熄灭
• 电源线VCC ,一般取+5V ;
• 电源地线GND。
5
第七章
2、内部结构
A 组 控 制
内部数据总线 (8位)
端口A (8位)
D7~D0
C P U
数据总线
数据 总线 缓冲器
读 /写 控制 逻辑
A 组C 端口
PA7~PA0
(高4位)
PC7~PC4
外 设
RD WR A1 A0 RESET CS
B 组 控 制
PC3 PA7~PA0 PC7 PC6
INTRA
B组方式:1=方式1 0=方式0 B口:1=输入, 0=输出 PC2~0:1=输入, 0=输出 RD WR
INTE
1
INTE
OBFA ACKA STBA
2
PC4 PC5
IBFA