单片机原理及应用第17讲利用8255扩展IO口

合集下载

(17)可编程并行IO接口芯片8255及其应用 6.51

(17)可编程并行IO接口芯片8255及其应用 6.51

(在输入时,也由PC2的位操作来控制)
注意:“在方式1中, PC4和PC2置1/置0,只控制INTEA 和INTEB,不影响PC4和PC2引脚的状态”。
第9页
电气工程学院
下图从CPU在中断服务程序输出数据开始,叙述方式1输出:
① DB CPU ⑤ ①
8255
D0~D7 B口 ② PB0~PB7 外 设 ② ④ ③
3)INTRA (PC3充当)Interrupt Request of port A A口中断请求信号输出,有效;8255向CPU发出中断请求
* INTRA 有效的条件? STBA = 1,IBFA = 1, INTEA =1(PC4)
第6页
电气工程学院
*INTEA:8255内部的中断允许触发器的控制信号。 =0:8255不能通过INTRA 引脚发出中断请求; =1:在其它条件满足时,向CPU发中断请求。 怎么设置INTEA=1/0 ? *INTEA受控于PC4的置1/置0 PC4置1,则INTEA=1,允许8255发出中断请求; PC4置0,则INTEA=0,禁止8255发出中断请求。 (在输出时,则由PC6的位操作来控制INTEA) 怎么设置PC4?
2)控制字寄存器(控制口)
存放8255的控制字
四个可寻址端口 PA、PB、PC和控制口
3)数据总线缓冲器 双向三态8位缓冲器,实现8255与系统DB的连接。 4)读/写控制逻辑
接受来自系统总线的读/写信号,完成内部端口的选择、读/写操作。
( 2)引脚功能 PA0~PA7:口A的I/O数据线 PB0~PB7:口B的I/O数据线 PC0~PC7:口C的I/O数据线(还可以充当联络信号线) CS :8255片选
INTR WR
INTRB(PC0) WR (PC1)OBFB (PC2)ACKB

实验七 8255并行IO接口

实验七  8255并行IO接口

实验七8255并行I/O口一、实验目的8255可编程并行I/O接口有三个通道和三种工作方式.其中A,B通道和外设交换数据,C 通道和外设交换状态信息。

8255并行I/O接口与外设交换的方式由软件预先设置,该过程称为初始化.1.学会正确使用8255和CPU及外设的接口方法,2.掌握8255的编程原理,3.熟悉外设的信息通过8255和CPU的交换过程二、实验内容1.用8255的A端口控制8个LED发光二极管的循环亮灭.其硬件线路连接如图4.2所示2.编程:要求通过软件延时程序控制8个指示灯周而复始的循环点亮.3.编程提示8255的控制字如下:Array三、程序框图略四、程序清单;FILENAME:8255.ASM;THIS PROGRAM IS USED FOR TEST OUTPUT OF 8255'S A PORT;NOTICE:;CHIP:8255;CS--Y2(74LS138):210H--217H;PA0--PA7==LEDPORT_8255_A EQU 210HPORT_8255_B EQU 211HPORT_8255_C EQU 212HCONTROL_PORT_8255 EQU 213HDA TA SEGMENT PARA 'DATA'BUFFER DB 100 DUP(?)DA TA ENDSSTACK SEGMENT PARA STACK 'STACK'STA DB 1024 DUP(?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENT PARA 'CODE'ASSUME CS:CODE,DS:DA TA,SS:STACK,ES:DATA MAIN PROC FARBEGIN:MOV AX,DA TAMOV DS,AXMOV AX,STACKMOV SS,AXMOV SP,TOPMOV DX,CONTROL_PORT_8255MOV AL,10000000B ;A PORT:MODE 0,OUTPUTOUT DX,ALMOV DX,PORT_8255_AMOV AL,0FFHOUT DX,ALMOV AL,0FEHMOV CX,0A0HAGAIN3:OUT DX,ALMOV BX,0A0H ;DELAY TIMEAGAIN2:MOV SI,2FFFHAGAIN1:NOPNOPDEC SIJNZ AGAIN1DEC BXJNZ AGAIN2 ;DELAY TIME ENDSROL AL,1DEC CXJNZ AGAIN3MOV DX,PORT_8255_AMOV AL,0FFH ;CLOSE LEDOUT DX,ALMOV AX,4C00H ;RETURNINT 21H MAIN ENDP CODE ENDSEND BEGIN。

51单片机8255A扩展IO口解析

51单片机8255A扩展IO口解析
D7 D6 D5 D4 D3 D2 D1 D0
PC口置/复位控制字
工作方式控制字
B组
D7 D6 D5 D4 D3 D2 D1 D0
PC置/复位控制字
0:复位 1:置位 位选择 000 PC0 001 PC1 010 PC2 011 PC3 100 PC4 101 PC5 110 PC6 111 PC7
I/O PC4-PC7
B组 端口C
下半部(4)
I/O PC0-PC3
PA口 PB口 PC口低4位
PC口高四位
PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7
14 15 16 17 13 12 11 10
RD WR A0 A1 RESET
读写 控制 逻辑
B组 控制
B组 端口B (8) I/O PB0-PB7
单片机 8255A 外设
1. 8255A的结构及引脚功能
8255A为40引脚的双列直插式(DIP)封装
(1)引脚功能 ① D0~D7为数据线,与单片机的数据 总线连接,传数据、命令等。 ② PA0~PA7(PA口)、PB0~PB7(PB 口)、PC0~PC7(PC口)为3个8位并行 I/O口,用于8255A与外设之间传数据。 ③ 读写控制逻辑线
8255A
PA口: × PB口: × PC口: × 控制口:× × × × × × × × × × × × × × × × × × × × × × × × × × × × ×
CS
0 0 0 0 × × × × × × × × × × × × × × × × × × × ×
A1 0 0 1 1
A0 0 1 0 1
0 1 0 1
没接的地址线设为1,则4个端口地址为: PA=7FFCH PB=7FFDH PC=7FFEH 控制口=7FFFH

8255并行扩展

8255并行扩展

CS
1. 8255的内部结构
(1)A口、 B口和 C 口。 A口、 B口和 C口均为 8 位 I/O 数据口, 但结构上略有差别。A口由一个8位的数据输出缓冲/锁存器和
一个 8 位的数据输入缓冲 / 锁存器组成。 B 口由一个 8 位的数据
输出缓冲/锁存器和一个8位的数据输入缓冲器组成。三个端口 都可以和外设相连,分别传送外设的输入/输出数据或控制信
2. 8255A的端口选择和基本操作
•A1 •0 •0 •1 •0 •0 •1 •1 •X •1 •A0 •0 •1 •0 •0 •1 •0 •1 •X •1 •RD •0 •0 •0 •1 •1 •1 •1 •X •0 •WR •1 •1 •1 •0 •0 •0 •0 •X •1 •CS •0 •0 •0 •0 •0 •0 •0 •1 •0 •操作 •从PA口输入 •从PB口输入 •从PC口输入 •从PA口输出 •从PB口输出 •从PC口输出 •从命令口输入 •高阻态 •非法态
•X
•x
•1
•1
•0
•高阻态
3. 8255A的控制字
• 8255有两个控制字: 方式控制字 方式控制字用于设定单片机的PA口、PB口和PC口 的工作方式。
置位/复位控制字 置位/复位控制字用于对8255A的PC口按位进行操 作。
方式控制字
方式控制字
D7 D6 D5 D4 D3 D2 D1 D0
置位/复位控制字
D7 × × × D3 D2 D1 D0
0: 复位 1: 置位 位选择 000 001 010 011 100 101 110 111 0: 位操作
PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7
8255A的工作方式

实验七 8255 并行IO扩展实验

实验七 8255 并行IO扩展实验

实验七8255 并行I/O扩展实验一、实验要求利用8255 可编程并行口芯片,实现输入、输出实验,实验中用8255PA 口作读取开关状态输入,8255PB 口作控制发光二极管输出。

二、实验目的1、了解8255 芯片结构及编程方法。

2、了解8255 输入、输出实验方法。

三、实验电路及连线1、Proteus 实验电路2、硬件验证实验硬件连接表四、实验说明1、8255A 芯片简介:8255A 可编程外围接口芯片是INTEL 公司生产的通用并行接口芯片,它具有A、B、C 三个并行接口,用+5V 单电源供电,能在以下三种方式下工作:方式0:基本输入/ 输出方式方式l:选通输入/ 输出方式方式2:双向选通工作方式2、使8255A 端口A 工作在方式0 并作为输入口,读取Kl-K8 个开关量,PB 口工作在方式0作为输出口。

五、实验程序流程图六、实验步骤1、Proteus 仿真a.在Proteus 中打开设计文档8255_STM.DSN;b.建立实验程序并编译,仿真;c.如不能正常工作,打开调试窗口进行调试。

参考程序:CODE SEGMENTASSUME CS:CODEIOCON EQU 8006HIOA EQU 8000HIOB EQU 8002HIOC EQU 8004H START:MOV AL,90HMOV DX,IOCONOUT DX,ALNOPSTART1:NOPNOPMOV AL,0MOV DX,IOAIN AL,DXNOPNOPMOV DX,IOBOUT DX,ALJMP START1 CODE ENDSEND START2、实验板验证a.通过USB 线连接实验箱b.按连接表连接电路c.运行PROTEUS 仿真,检查验证结果。

实验 并行IO口8255扩展

实验   并行IO口8255扩展
DelayMS (1);
}
}
//刷新显示一段时间后递增1,形成滚动效果,最大索引为14
i= (i+1)%15;
}
}
0xff, 0xff, 0xff,0xff, 0xff, 0xff, 0xff, 0xff, 0xff};
//共阳极的7段集成式数码管对应编码
// 0:0xc0
// 1:0xcf
// 2:0xa4
// 3:0xb0
// 4:0x99
// 5:0x92
// 6:0x82
// 7:0xf8
// 8:0x80
#define PC XBYTE[0x0002] //定义8255B地址
#define COM XBYTE[0x0003] //定义8255B控制寄存器地址
//待显示字符队列编码
uchar code DSY_CODE_Queue[ ]=
{0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
// 9:0x90
// A:0x88
// B:0x83
// C:0xc6
// D:0xa1
// E:0x86
// F:0x8e
// DOT:0x7f
// -:0xaf
//数码管选通
uchar DSY_Index[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
实验三并行I/O口8255扩展
一、实验目的
1、了解8255A芯片的结构以及编程方法
2、掌握通过8255A并行口读取开关数据的方法
二、实验说明
本次实验用通过8255扩展接口,仅通过P0端口控制8只集成式7段数码管的显示控制。8255A的PA、PB端口分别连接8位数码管的段码和位码,程序控制数码管滚动显示一串数字。

8255扩展实验

8255扩展实验
实验3 芯片扩展I/O口实验 实验 8255芯片扩展 芯片扩展 口实验
1、实验目的
了解8255的基本结构和工作原理; 掌握8255的工作方式及应用编程;
2.实验内容 2.实验内容
2 1
D1
D2
D3
D4
D5
D6
D7
D8
LED-YELLOW
10
12
4
6
8
2
4
U4:B
7407 11 13 3 5 9 1 3 L7
U2
D0 D1 D2 D3 D4 D5 D6 D7 RD WR A0 A1 RESET CS PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7 8255A PACKAGE=DIL40 4 3 2 1 40 39 38 37 18 19 20 21 22 23 24 25 14 15 16 17 13 12 11 10 L0 L1 L2 L3 L4 L5 L6 L7 K0 K1 K2 K3 K4 K5 K6 K7 K0 K1 K2 K3 K4 K5 K6 K[0..7] K7
D 7 D 6 D 5 D4 D 3 D 2 D1 D 0
B组 C 口 (下 半 部 ) 1=输 入 0=输 出 B口 1=输 入 0=输 出 模式选择 1=模 式 1 0=模 式 0 A组 C 口 (上 半 部 ) 1=输 入 0=输 出 A口 1=输 入 0=输 出 模式选择 00=模 式 0 01=模 式 1 1×=模 式 2 控制选择 1=工 作 方 式 控制
3、参考例程 5.参考例程 参考例程
;端口地址送DPTR ;8255控制字送A ;置8255为工作方Hale Waihona Puke 0,;扫描模式送8255的B

IO扩展8255

IO扩展8255

I/O扩展(8255)模块北阳电子技术有限公司保留对此文件修改之权利且不另行通知。

北阳电子技术有限公司所提供之资讯相信为正确且可靠的,但并不保证本文件中绝无错误。

请于向北阳电子技术有限公司提出订单前, 自行确定所使用之相关技术文件及规格为最新之版本。

若因贵公司使用本公司之文件或产品,而涉及第三人之专利或著作权等智慧财产权之应用及配合时,则应由贵公司负责取得同意及授权,本公司仅单纯贩售产品,上述关于同意及授权,非属本公司应为保证之责任。

又未经北阳电子技术有限公司之正式书面许可,本公司之所有产品不得用于医疗器材,維持生命系統及飞航等相关设备。

凌阳大学计划推广中心北京市海淀区上地信息产业基地中黎科技园1号楼6层C段邮编:100085目录1编写目的 (3)2硬件设计及功能描述 (3)2.1硬件设计电路 (3)2.2硬件设计功能描述 (4)3软件设计及使用说明 (5)3.1主程序软件设计流程及说明 (5)3.28255读写流程说明 (5)1 编写目的目的:为用户在中提供一个I/O 扩展的方法,在设计过程遇到I/O不够用时可以用此种方案。

2 硬件设计及功能描述硬件原理图及功能描述(说明1、如何操作2、资源如何分配,3、什么现象)2.1 硬件设计电路8255A是Intel公司生产的并行I/O接口芯片,它有三个8位并行I/O口。

8255A引脚功能如表一所示,8255A的基本操作如表二所示。

表一 8255A引脚功能引脚编号I/O 功能A口低4位I/O线I/OPA3—PA0 1---4读控制线,低电平有效I/RD 5I片选信号线,低电平有效/CS 6系统地GND 7地址线用来选择端口A1,A0 8,9II/O上C口I/O线PC7—PC4 10--13下C口I/O线I/OPC0—PC3 14--17I/OB口I/O线PB0---PB7 18--25系统电源,+5VVcc 26数据总线,双向三态D7---D0 27--34I/OI复位信号线,高电平有效RESET 35I写控制线,低电平有效/WR 36A口高4位I/O线PA7---PA4 37--40I/O表二 8255A的基本操作/CS /RD /WR A1 A0 输入操作(读)0 0 1 0 0 A口到数据总线0 0 1 0 1 B口到数据总线0 0 1 1 0 C口到数据总线输出操作(写)0 1 0 0 0 数据总线到A口0 1 0 0 1 数据总线到B口。

第一章 单片机IO接口的扩展---8255

第一章 单片机IO接口的扩展---8255

单片机对外设的控制方式
(1)程序查询方式
这种方式下,CPU通过I/O指令询问指定 外设当前的状态,如果外设准备就绪,则进行 数据的输入或输出,否则CPU等待,循环查询。
这种方式的优点是结构简单,只需要少 量的硬件电路即可,缺点是由于CPU的速度远 远高于外设,因此通常处于等待状态,工作效 率很低
(2)中断处理方式
(1)设置数据的寄存、缓冲逻辑,以适应CPU与外设之间的速度差异,接口通常由 一些寄存器或RAM芯片组成,如果芯片足够大还可以实现批量数据的传输; (2)能够进行信息格式的转换,例如串行和并行的转换; (3)能够协调CPU和外设两者在信息的类型和电平的差异,如电平转换驱动器、数 /模或模/数转换器等; (4)协调时序差异; (5)地址译码和设备选择功能; (6)设置中断和DMA控制逻辑,以保证在中断和DMA允许的情况下产生中断和 DMA请求信号,并在接受到中断和DMA应答之后完成中断处理和DMA传输。 接口的控制方式
WR :写信号,低电平有效。当 WR 有效时,CPU
可以往8255A中写入控制字或数据。 A1、A0:端口选择信号。8255A内部有3 个数据端口和1个控制端口,当A1A0=00时选 中端口A;A1A0=01时选中端口B;A1A0=10 时选中端口C;A1A0=11时选中控制口。 A1、A0和 RD 、 WR 及 CS 组合所实 现的各种功能如表所示。
方式1下的输出时序
3. 方式2(双向模式)
8255A只有A口具有这种双向输入输 出工作方式,实际上是在方式1下A口输入 输出的结合。在这种方式下,A口为8位双 向传输口,C口的PC7~PC3用来作为输入 /输出的同步控制信号。 在这种情况下,B口和PC2~PC0只能 编程为方式0或方式1工作,而C口剩下的 3条线可作为输入或输出线使用或用作B 口方式1之下的控制线。

单片机并行IO口8255扩展实验

单片机并行IO口8255扩展实验

实验一并行I/O口8255扩展实验
一、实验目的
了解8255芯片的结构及编程方法,学习模拟交通灯控制的实现方法。

二、实验内容
用8255做输出口,控制十二个发光二极管燃灭,模拟交通灯管理。

三、实验说明
因为本实验是交通灯控制实验,所以要先了解实际交通灯的变化情况和规律。

假设一个十字路口为东西南北走向。

初始状态0为东西红灯,南北红灯。

然后转状态1东西绿灯通车,南北红灯。

过一段时间转状态2,东西绿灯灭,黄灯闪烁几次,南北仍然红灯。

再转状态3,南北绿灯通车,东西红灯。

过一段时间转状态4,南北绿灯灭,黄灯闪烁几次,东西仍然红灯,最后循环至状态1。

四、实验原理图
五、实验程序框图(8255.ASM)
六、实验步骤
①8255 PC0-PC7、
PB0-PB3分别接L0~L11
红、黄、绿发光二极管;
②8255CS接Y0(在仿
真插头所在扩展总线区);
③打开8255接口区中的
电源开关S1;
④调试、运行程序(内
程序,外数据);
⑤初始态为四个路
口的红灯全亮之后,东西
路口的绿灯亮南北路口的
红灯亮,东西路口方向通
车。

延时一段时间后东西
路口的绿灯熄灭,黄灯开
始闪烁。

闪烁若干次后,
东西路口红灯亮,而同时
南北路口的绿灯亮,南北
路口方向开始通车,延时
一段时间后,南北路口的
绿灯熄灭,黄灯开始闪烁。

闪烁若干次后,再切换到东西路口方向,之后重复以上过程。

.。

51单片机8255A扩展IO口与单片机连接

51单片机8255A扩展IO口与单片机连接

INTRA IBFA STB A INTRA
STB BRB INTRB
ACK B
4. 8255A的应用
8255A与单片机的连接
WR RD P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 D7 D6 D5 D4 D3 D2 D1 D0 Q7 Q6 Q5 Q4 Q3 Q2 Q1 Q0 G OE WR RD RESET CS PA
8255A CS
PA口: 0 × PB口: 0 × PC口: 0 × 控制口:0 × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × ×
A1 0 0 1 1
A0
74LS373
8255A
A1 A0 PB
8031
ALE
EA
D7 D6 D5 D4 D3 D2 D1 D0
PC
数据线D0~D7接P0口 RD 、 WR 接单片机的 RD 、WR 复位线RESET接到复位电路,与CPU一起复位
8255A与单片机的连接
WR RD P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 D7 D6 D5 D4 D3 D2 D1 D0 Q7 Q6 Q5 Q4 Q3 Q2 Q1 Q0 G OE WR RD RESET CS PA
+5V ... ... L4 L3 ... L0 ... K7 ... . . . K4 K3 ... K0 ... . .
0 1 0 1
没接的地址线设为1,则4个端口地址为: PA=7FFCH PB=7FFDH PC=7FFEH 控制口=7FFFH

实验五 用8255扩展IO口

实验五 用8255扩展IO口

实验五用8255扩展I/0口一.实验目的1.掌握8255扩展I/O口的接口技术。

2.掌握控制应用程序的设计方法。

二.实验原理设计一块8255扩展实验板,其原理线路如图6—1所示。

A口、B口分别接有8个发光二极管指示灯。

从8255A口、B口输出控制字,可控制指示灯的点亮/熄灭,某口线输出“0/1”,可控制该口线的指示灯“亮/灭”。

由接口线路可确定8255的口地址。

A口:8000H B口:8001H C口:8002H 控制口:8003H图1 8255扩展线路原理图三.实验内容与步骤1.通过仿真插头把8255扩展板接在仿真器上。

2.编制使指示灯左/右循环点亮/熄灭的控制程序。

3.键入程序,将仿真器设置在仿真工作方式,运行程序并观察结果。

4.修改程序,控制指示灯以不同形式点亮/熄灭。

四.实验预习要求1.看懂扩展线路原理图,读懂参考程序。

2.写出实验内容要求的修改程序。

五.思考题1.实验中8255工作于何种方式?控制字怎样确定?2.实验程序中延时程序段的作用是什么?去掉延时程序段运行结果有何变化?3.8255的口地址是否唯一?怎样确定口地址?六.实验报告要求1.按顺序写出实验步骤和工作内容。

2.写出实验中所遇到的问题极其解决方法或解决思路。

3.写出实验思考题答案。

七.参考程序0000 1 ORG 0000H0000 802E 2 SJMP MAIN30030 4 ORG 0030H0030 908003 5 MAIN: MOV DPTR,#8003H 0033 7480 6 MOV A,#80H 0035 F0 7 MOVX @DPTR,A 0036 7401 8 MOV A,#01H 0038 FD 9 MOV R5,A0039 ED 10 L1: MOV A,R5003A 908000 11 MOV DPTR,#8000H 003D F0 12 MOVX @DPTR,A 003E A3 13 INC DPTR003F F0 14 MOVX @DPTR,A 0040 7FFF 15 MOV R7,#0FFH 0042 7EFF 16 L2: MOV R6,#0FFH 0044 DEFE 17 L3: DJNZ R6,L3 0046 DFFA 18 DJNZ R7,L2 0048 ED 19 MOV A,R50049 23 20 RL A004A FD 21 MOV R5,A004B 80EC 22 SJMP L1。

基于51单片机的实时时钟设计(8255扩展io口)讲解

基于51单片机的实时时钟设计(8255扩展io口)讲解

目录摘要 (1)第一章51单片机简介 (2)1.151系列单片机每部结构 (2)1.251单片机的封装及引脚 (2)第二章实时时钟的设计方案 (4)2.1单片机最先系统 (4)2.28255A模块 (4)2.3数码管显示模块 (5)2.4时间调节模块 (6)2.5整点报时 (7)第三章实时时钟的程序设计 (8)3.1时间调节程序流程图 (8)3.2主程序流程图 (9)第四章小结 (10)参考文献 (11)附录1 (12)附录2 (13)摘要单片计算机即单片微型计算机。

由RAM ,ROM,CPU构成,定时,计数和多种接口于一体的微控制器。

它体积小,成本低,功能强,广泛应用于智能产业和工业自动化上。

而51系列单片机是各单片机中最为典型和最有代表性的一种。

通过本子课程设计掌握单片机的基本原理,加深对课堂知识的理解,从而达到学习、设计、开发单片机软硬的能力。

本设计主要设计了一个基于AT89C52单片机的电子时钟,由定时器定时并在数码管上显示相应的时间,通过中断和按键扫描实现对时间的停止、启动和设置调整。

应用Proteus软件实现了单片机电子时钟系统的设计与仿真。

该方法仿真效果真实、准确,节省了硬件资源。

关键字:单片机;子时钟;键盘控制。

第一章51单片机简介单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。

概括的讲:一块芯片就成了一台计算机。

它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。

同时,学习使用单片机是了解计算机原理与结构的最佳选择。

这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等,比方说用来控制路口红绿灯的亮灭公交车报站。

各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词——“智能型”,如智能型洗衣机等。

1.1 51系列单片机每部结构51系列单片机中主要有8031、8051、8751三种机型,它们的指令系统和芯片引脚完全兼容,只是片内程序存储器(ROM)有所不同,其中8031片内没有ROM,8051片内有4k的掩膜ROM,8751片内有4k的紫外线可擦除ROM。

扩展82C55并行IO接口实验

扩展82C55并行IO接口实验

扩展82C55并行I/O接口实验
一、实验要求
8个开关按钮分别对应8个LED指示灯,按下按钮1,指示灯1亮,按下按钮2,指示灯2亮……按下按钮8,指示灯8亮
二、实验目的
1、了解82C55芯片结构及编程设置方法
2、进行单片机扩展82C55的接口实验
3、单片机控制82C55输入输出的编程
三、实验程序如下:
MOV DPTR,#0003H ;8255控制地址传送到dptr
MOV A,#82H ;初始化8255,D2置1
MOVX @DPTR,A ;控制字写入控制寄存器
DD:MOV A,#0FFH
MOV DPTR,#0001H ;输入地址送至dptr
MOVX A,@DPTR ;按键输入状态送a
MOV DPTR,#0000H ;输出地址送dptr
MOVX @DPTR,A ;a数据送至输出端
SJMP DD
四、实验原理图
仿真截图
五、实验总结
实验是通过8255PB口检测八个开关的状态,进而输入单片机,单片机再把PB口输入的信息传送到PA口,从而显示在led灯。

单片机原理及应用第17讲利用8255扩展IO口

单片机原理及应用第17讲利用8255扩展IO口

单片机原理简介
单片机原理涉及CPU、存储器、I/O接口等方面。CPU负责执行指令,存储器 用于存储程序和数据,I/O接口实现与外部设备的数据交互。
8255扩展IO口介绍
8255是一种常用的扩展IO芯片,它包含三个可编程并行I/O口,可以实现输入 和输出功能。它具有较强的通用性和可扩展性。
8255扩展IO口的功能和特性
单片机原理及应用第17讲 利用8255扩展IO口
本讲将介绍单片机的基本原理和应用。主题包括8255扩展IO口的功能、特性 以及利用8255扩展IO口的设计步骤。
单片机概述
单片机是一种高度集成的电子器件,内部包含CPU、RAM、ROM和各种外设接口。它可以实现各种控 制功能,并广泛应用于电子设备领域。
利用8255扩展IO口的应用实例
机器人组装线
通过8255扩展IO口,可以实现 与机器人的通信和控制,提高 生产效率。
温度监控系统
利用8255扩展IO口读取温度传 感器的数据,实时监测并报警 温度异常情况。
家居自动化
通过8255扩展IO口,可以控制 家居设备,实现智能化的家居 管理和控制。
利用8255扩展IO口的设计步骤
多功能性
8255可以配置为三种不同的工作模式:单个8255、两个8255串联和三个8255并联,满足不 同的应用需求。
灵活的输入输出控制
8255可以通过编程控制来实现不同的输入输出模式,包括口号输出、手摇模式、双向传输 等。
可编程中断
8255支持可编程中断,可以通过设置中断屏蔽字和中断控制字来实现中断功能。
1
确定需求
明确需要利用8255扩展IO口的具体功能和应用场景。
2
选型与连接
根据需求选择合适的8255芯片,并按照写控制程序,设置8255的工作模式和相关参数。

单片机中的IO口扩展原理及应用

单片机中的IO口扩展原理及应用

单片机中的IO口扩展原理及应用单片机是一种在微处理器中集成了中央处理器、内存、输入/输出控制和时钟等功能的微型计算机。

在实际应用中,单片机的使用每況愈下,并逐渐被更高级的处理器所取代。

然而,在一些特殊应用领域,如嵌入式系统和物联网设备中,单片机仍然扮演着重要的角色。

在单片机中,IO口的扩展是一项关键的技术,用来增加单片机的输入和输出接口数量。

本文将探讨单片机中的IO口扩展原理及其应用。

一、单片机IO口扩展原理在单片机中,IO口(Input/Output Port)用于连接外部电路和其他设备,扮演着数据输入和输出的桥梁角色。

然而,通常单片机内部只有有限的IO口数量。

为了满足复杂的应用需求,需要通过扩展技术来增加IO口的数量。

1. 并行IO口扩展其中一种常见的IO口扩展技术是通过并行IO口扩展芯片来增加IO口数量。

该芯片通常由一个并行输入/输出移位寄存器和控制逻辑组成。

通过串行通信协议,单片机可以控制并行IO口扩展芯片,以实现扩展IO口的输入和输出功能。

这种方式适用于需要大量IO口的应用,如工业控制和自动化设备。

不过需要注意的是,并行IO口扩展芯片策略相对复杂,需要额外的引脚和电路设计,并且使用的软件协议需要单片机和外部芯片之间的高速通信支持。

2. 串行IO口扩展另一种常见的IO口扩展技术是通过串行IO口扩展芯片来增加IO口数量。

串行IO口扩展芯片通常采用常用的串行通信协议,如I2C(Inter-Integrated Circuit)或SPI(Serial Peripheral Interface),通过少量的引脚连接到单片机。

通过控制寄存器和数据寄存器,单片机可以发送指令和数据来控制扩展IO口的输入和输出。

这种方式相对于并行IO口扩展芯片来说,引脚数量较少,实现简单,适用于需要较少IO口数量的应用。

同时,由于使用串行通信协议,可以通过级联多个串行IO口扩展芯片,进一步增加IO口数量。

二、单片机IO口扩展应用单片机IO口扩展技术在各种嵌入式系统和物联网设备中都有广泛的应用。

实验九、8255可编程并行IO扩展接口实验

实验九、8255可编程并行IO扩展接口实验

实验九、8255可编程并行I/O扩展接口实验一、实验目的1.熟悉8255并行接口芯片的基本工作原理及应用2.掌握单片机与8255的接口电路设计和编程二、实验设备1.仿真器2.8255可编程并行I/O扩展接口模块3.单片机最小系统模块4.发光二极管阵列模块三、实验要求连接单片机最小系统、8255扩展接口、数码管动态扫描显示模块、矩阵式键盘模块组成的电路,要求在键盘按下时,8位LED动态显示器上最低位显示相应的字符,以前的各位字符向高位推进1位。

请参看实验二的相关内容。

四、实验原理8255是一个具有3个8位的8位并行口,并且可编程为多种工作模式的接口芯片。

由于每个端口上具有输入/输出的缓冲和锁存功能,因此可用于扩展单片机有限的I/O口,作为单片机和外围器件的中间接口电路。

3.1引脚说明8255共40个引脚,采用了双列直插的封装,主要引脚功能如下:◆D7—D0:三态双向数据线,与单片机数据总线连接;◆CS:片选信号,低电平有效;◆RD:读出信号线,低电平有效;◆WR:写入信号线,低电平有效;◆PA7—PA0:A口输入/输出线;◆PB7—PB0:B口输入/输出线;◆PC7—PC0:C口输入/输出线;◆RESET:芯片复位信号线;◆A1—A0:地址线,用来指定8255内部端口。

3.2内部结构和工作方式(1)端口A、B、C端口A为8位数据传送,数据输入或输出时均受到锁存。

端口B为8位数据传送,数据输入时不受锁存,而数据输出时受到锁存。

端口C 为8位数据传送,数据输入时不受锁存,而数据输出时受到锁存。

(2)8255接口工作状态选择表9-1(3)8255的基本工作方式8255可编程并行I/O 扩展芯片是通过在控制端口中设置控制字来决定它的工作方式的。

8255有以下三种基本工作方式:⏹ 方式0——基本输入/输出方式。

⏹ 方式1——选通输入/输出方式。

⏹ 方式2——双向传送方式。

8255A 的端口A 可以工作在三种工作方式中的任何一种,端口B 只能工作在方式0或方式1,端口C 则常常配合端口A 和端口B 工作,为这两个端口的输入/输出传送提供控制信号和状态信号。

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

0 存器
× ×××
1 数据总线为三态
1
1
0
1
0 非法状态
× ×1
1
0 数据总线为三态
工作方式选择控制字及C口置位/复位控制字 8255A有三种工作方式: (1) 方式0:基本输入输出; (2) 方式1:选通输入输出; (3) 方式2:双向传送(仅A口有)。 1.工作方式选择控制字
三种工作方式由方式控制字来决定。 控制字格式如下。
单片机系统的扩展
• 1、存储器的扩展 • 2、I/O端口的扩展 • 3、中断源的扩展 • 4、定时器/计数器的扩展
1、存储器的扩展
• 1)怎样识别扩展的程序存储器和扩展的 数据存储器
• 2)扩展的存储器的容量多大 • 3)存储器的地址范围怎么确定
80C51
31 EA/VP P0.0 39
P0.1 38
P06
D6 Q6 16
2
A6 D6 16
P07
D7 Q7 19
1
A7 D7 17
P20
23 A8
1 OC
P21
22 A9
11 G
P22
19 A10
18 CE
20 OE
21 WE
P2.7 P2.6 P2.5 P2.4
│ P2.0
ALE 8051
D0 Q0 ││ D7 Q7
74LS373
G OE
8
P0.7 ●
2)I/O端口的编址 I/O接口:是指单片机与外设间的I/O接口芯片。
I/O端口:简称I/O口,指具有端口地址的 寄存器或缓冲器 一个I/O接口芯片可以有多个I/O端口
2)I/O端口编址: I/O端口编址两种方式:独立编址与统一编址。
(1) 独立编址方式 I/O寄存器地址空间和存储器地址空间分开编址,但
• 3)利用串行口来扩展并行I/O口
利用8255A扩展I/O口
• 8255A是Intel公司生产的可编程并行I/O 接口芯片,具有3个8位的并行I/O口,3 种工作方式,可通过编程改变其功能, 因而使用灵活方便,通用性强。
1.引脚说明 40只引脚,双列直插式封装,引脚功能如下:
D7~D0:三态双向数据线,与单片机数据总线连接
8

P0.0

5
5
● 8
A0-A7 A8-A12
● 5
● 8
A0-A7 A8-A12
2764
CE +5V CS
CE 1# 6264
D0-D7 OE 8

OE WR 8 ●
5 8 A0-A7 A8-A12
+5V CS
CE 2# 6264
D0-D7 OE WR 8
PSEN RD WR
● ●
2、I/O端口的扩展
1)I/O接口的作用 2)I/O端口的编址 3)扩展I/O端口的方法
1)I/O接口的作用
I/O接口电路应满足以下要求: (1)实现和不同外设的速度匹配 (2)改变信号传送方式:把串行数据变成并 行数据或把并行数据变成串行数据
(3)改变信号的性质和电平:数据型数据和 状态、命令型数据之间的转换;TTL电平和其 他类型的电平之间的转换
A1 A0 RD WR CS
工作状态
0
0
0
1
0 读端口A:A口数据→数据总线
0
1
0
1
0 读端口B:B口数据→数据总线
1
0
0
1
0 读端口C:C口数据→数据总线
0
0
1
0
0 写端口A:总线数据→A口
0
1
1
0
0 写端口B:总线数据→B口
1
0
1
0
0
写端口C:总线数据→C口 写控制字:总线数据→控制字寄
1
1ห้องสมุดไป่ตู้
1
0
C1
19
X1
P0.2 37
20P
P0.3 36
P0.4 35
X1 12MHz
P0.5 34
C2
18
X2
P0.6 33
20P
P0.7 32
VCC
9
RESET P2.0 21
10U
P2.1 22
INT0 P2.2 23
INT1 P2.3 24
T0
P2.4 25
T1
P2.5 26
29
PSEN
P2.6 27
令字”对PC口按位“置1”或“清0”。 (3)数据总线缓冲器
三态双向,作为8255A与单片机数据线之间接口, 传送数据、控制命令及外部状态信息。 (4)读/写控制逻辑电路
该电路接收CPU发来的控制信号、RESET、地址信 号A1、A0等。对端口进行读写。
各端口的工作状态与控制信号的关系如表所示。
8255A端口工作状态选择
P2.7 28
ALE/P 30
RD 17
WR 16
74LS373
6116
P00
D0 Q0 2
8
A0 D0 9
P01
D1 Q1 5
7
A1 D1 10
P02
D2 Q2 6
6
A2 D2 11
P03
D3 Q3 9
5
A3 D3 13
P04
D4 Q4 12
4
A4 D4 14
P05
D5 Q5 15
3
A5 D5 15
2.内部结构
(1)端口A、B、C
功能和结构上有些差异
PA口:输出缓冲/锁存器和输入缓冲器 PB口:输出缓冲/锁存器和输入缓冲器 PC口:输出缓冲/锁存器和输入缓冲器
PC口可在软件的控制下,分为两个4位端口,作为 PA口、PB口选通方式操作时的状态控制信号。
(2)A组和B组控制电路
A组:PA口和PC口的上半部(PC7~PC4); B组:PB口和PC口的下半部(PC3~PC0),可根据“命
C口上半部分(PC7~PC4)随A口称为A组
C口下半部分(PC3~PC0)随B口称为B组。
其中A口可工作于方式0、1、和2,而B口只能工作在 方式0和1。
2. C口按位置位/复位控制字 可对C口8位中的任一位置“1”或清“0”。
1.方式0
基本的输入/输出方式。
MCS-51可对8255A进行数据的无条件传送 方式0基本功能为: (1)具有两个8位端口(A、B)和两个4位端口(C 的上半部分和下半部分)。 (2)任一个端口都可以设定为输入或输出。
CS*:片选信号线,低电平有效,表示本芯片被选中
RD*:读出信号线,控制8255A中数据的读出 WR*:写入信号线,控制向8255A数据的写入。 Vcc:+5V电源。 PA7~PA0:A口输入/输出线。 PB7~PB0:B口输入/输出线。 PC7~PC0:C口输入/输出线。 A1、A0:地址线,用来选择8255A内部的4个端口。
需专门读写I/O的指令和控制信号。
(2)统一编址方式
I/O寄存器与数据存储器单元同等对待,统一编址。 不需要专门的I/O指令,直接使用访问数据存储器的指 令进行I/O操作,简单、方便且功能强。
3)扩展I/O口的方法:
• 1)利用常用的外围I/O接口芯片8255A, 8155
• 2)74LS系列的TTL电路也可以作为 MCS-51的扩展I/O口,如74LS244、 74LS273等。
相关文档
最新文档