第七章 并行IO接口下
第7章 IO口
27
第7章 MCS-51单片机常用接口技术
MCS-51对LED的显示 2.动态显示
多个LED共用一个8位I/O口,任何时候各个LED都接 有相同的字形码,但某一时刻只点亮一个LED。究竟哪个 LED被点亮由字位码控制,各个LED轮流被点亮。
MOV E, C ;读取P1.0、P1.1 ANL C,D ;得DE MOV G, C MOV C, E ORL C, D ;得(D+E) ANL C, /G ;得F值 MOV P1.2, C ;用灯显示F SJMP LOOP1 END 20
第7章 MCS-51单片机常用接口技术
(三)作为外部三态门和锁存器接口
2.读端口数据方式(读端口锁存器中数据) 直接以Pn口为源操作数的操作指令。例:
MOV ORL ANL XRL A , P0 R1 , P1 20H , P2 @R0 , P3
返回
17
第7章 MCS-51单片机常用接口技术
3.读引脚方式(获取从引脚传送进来的外部数据)
例如,读P1口低4位:
MOV P1 , #0FH MOV A , P1
读P1口
MOV P1,A MOV A, P1 JNB ACC.0, PR0
JNB ACC.1, PR1
……
PR7:…
……
JNB ACC.7, PR7
AJMP DONE
END 各按键对应的处 理子程序 32
判断哪个按键被按下
第7章 MCS-51单片机常用接口技术
2.对行列式非编码键盘的接口
行列式非编码键盘是一种把所有按键排列成行列矩 阵的键盘。 在这种键盘中,行列交叉处为按键,当某一按键被 按下时,相应的行线列线就会接通,否则处于断开状 态。
51单片机并行io口工作原理
51单片机并行io口工作原理51单片机是一种常用的嵌入式系统开发平台,具有强大的并行IO 口功能。
本文将介绍并行IO口的工作原理及其在51单片机中的应用。
我们来了解一下什么是并行IO口。
并行IO口是指可以同时进行多个输入输出操作的接口。
在51单片机中,通过并行IO口可以实现与外部设备的数据交互,如控制LED灯、读取按键状态等。
在51单片机中,有两种类型的IO口:通用IO口和特殊功能IO口。
通用IO口可以进行输入输出操作,而特殊功能IO口则有特定的功能,如串口通信、定时器等。
并行IO口的工作原理是通过对寄存器的写入和读取来控制IO口的状态。
在51单片机中,有4个8位寄存器,分别是P0、P1、P2、P3。
P0口的每一位对应一个IO口,P1、P2、P3口则是通过外部扩展芯片来实现更多的IO口。
通过向寄存器中写入数据,可以控制IO口的输出状态。
例如,向P0寄存器写入0x55,即二进制01010101,可以控制P0口的1、3、5、7位输出高电平,2、4、6、8位输出低电平。
通过读取寄存器中的数据,可以获取IO口当前的输入状态。
例如,读取P1寄存器的值,可以获取P1口每一位的输入状态。
在51单片机中,可以通过对寄存器的位操作来实现对单个IO口的控制。
例如,通过设置P2口的某一位为1,可以将对应的IO口设置为输出模式;通过设置P2口的某一位为0,可以将对应的IO口设置为输入模式。
通过对寄存器的位操作,可以实现对多个IO口的同时控制。
除了通过编程对寄存器进行操作外,51单片机还提供了一些特殊功能IO口,可以直接使用这些IO口来实现一些常见的功能。
例如,P3.0和P3.1口可以作为外部中断输入口,P3.3和P3.4口可以作为定时器输入口,P3.5和P3.6口可以作为串口通信口。
在实际应用中,我们可以根据需要将不同的外部设备连接到51单片机的IO口上,通过对寄存器的编程,控制外部设备的状态。
例如,我们可以将LED灯连接到P0口的某一位上,通过对P0寄存器的位操作,控制LED灯的亮灭;我们也可以将按键连接到P1口的某一位上,通过读取P1寄存器的值,获取按键的状态。
并行IO口
P1口只能作为通用I/O口, 内部结构如图所示,由于 内部有上拉电阻,因此输 出时无需加上拉电阻,但 输入时,同P0口一样,必 须向端口输出‘1’,
P2口既可以作为通用I/O 口,在扩展程序存储器、 外部数据存储器或I/O口时, 也可作为地址总线的高8位。 作为I/O口使用时,用法与 P1口一样。
P0口的基本功能是数据的 输入与输出,此外在扩展 程序存储器、外部数据存 储器或I/O口时,作为数 据总线和低8位地址总线。
是P0口作为输出口使用时 需加上拉电阻, ;P0作为 输入口使用时,必须首先 写端口输出‘1’.
在实际应用中,P0口常作为地址/数据总 线口用,即,P0口先输出片外存储器的低8
并行I/O口
I/O端口是单片机实现信息交换和对外控制的重 要通道。
单片机内部有P0、P1、P2、P3 4个8位双向I/O 口,外设与这些端口可以直接相连,无需另外的 接口芯片。P0~P3既可以按字节输入或输出,也 可以按位进行输入输出,共32条口线,其控制十 分灵活方便。各个端口的结构、功能有所不同 。
P2口除了I/O使用外,还可以作为地址端 口使用,当使用外存储器时,与P0口一起 组成16位地址,这是,P2口输出高8位地址 。
注意:P1口输出()地址。
P3口除了双向输入/输出 口功能外,还具有第二功 能,其内部结构如图所示。 其输入/输出的用法同P1 口。
Ps:P0作输入时不需要上拉电阻,但要先置1。 因为P0口作一般I/导通,永远只能 读到0。 因此在输入前置1,使下拉场效应管截止,端口会 处于高阻浮空状态,才可以正确读入数据。 至于输出时,输出0是正常的,输出1时由于端口 处于浮空状态不能正确输出1,因此才需要接上拉 电阻。
chap07并行IO接口整理版.ppt
12/5/2019
-18-
7.3 并行I/O接口芯片
在控制系统中,有时需要利用I/O接口芯片扩展CPU 的并行I/O端口.
12/5/2019
-19-
7.3.1 Intel 8255A
8255提供了A,B,C三个8位端口
与 外 设 连 接
与CPU连接: DB,AB,CB
12/5/2019
-20-
12/5/2019
-31-
例: 实验6 定时/计数器实验
12/5/2019
-32-
第7章 本章结束!
12/5/2019
-33-
P1口仅有数据输入/出功能
P3口除用数据输入/出外,还有第二功能.
12/5/2019
-12-
P3口的功能 P3口除用数据输入/出外,还有第二功能.
12/5/2019
-13-
内部并行I/O接口的位结构-P0
&
12/5/2019
-14-
内部并行I/O接口的位结构-P1
12/5/2019
12/5/2019
-6-
无条件传送举例(示意图)(典型图,课程设计)
/RD /WR
12/5/2019
-7-
2.异步传送,又称条件传送或程序查询传送方式(polling)
在CPU与外设进行数据传送之前,CPU查询一下外 设的状态,当外设准备就绪进行传送;若外设未 准备好,则CPU处于等待状态。
2. 8255的控制字—方式控制字
12/5/2019
-21-
C口单一置复位控制字格式
12/5/2019
-22-
3.8255工作模式 模式0: 大部分在此方式下工作 模式1 模式2
7-并行I O接口
五、微机与外设的数据传送方式
1、程序传送 (1)无条件传送方式
¶ 在CPU与慢速变化的设备交换数据时,可以认为它们总是处于
“就绪”状态,随时可以进行数据传送,这就是无条件传送, 或称立即传送、同步传送。 ¶ 适合于简单设备,如LED数码管、按键或开关等。 ¶ 无条件传送的接口和操作均十分简单。
数据
读锁存器 2 地址/数据 控制=1 3 4
Q /Q
Vcc
内部 总线
写锁 存器
D CK
引脚P0.X
1 读引脚 =1 控制=1时,此脚作地址/数据复用口: (3)输入数据时,输入指令将使引脚与内部总线直通
51单片微机的P1口
P1.0—P1.7: 准双向I/O口(内置了上拉电阻) 输出时一切照常,仅在作输入口用时要先对其 写“1”。 Vcc
读锁存器 2 地址/数据 控制=1 =0 4 1
D CK Q /Q
3 1
0
Vcc 截 止
=0
内部 总线
写锁 存器
1
导 引脚P0.X 通
1 读引脚 =0 控制=1时,此脚作地址/数据复用口: (1)输出地址/数据 =0 时
51单片微机的P0口
P0.0—P0.7: 双向I/O (内置场效应管上拉) 寻址外部程序存储器时分时作为双向8位数据口 和输出低8位地址复用口;不接外部程序存储器 时可作为8位双向I/O口使用。
进行传送的中断服务程序
是预先设计好的。 中断请求是外设随机向 CPU提出的。 CPU对请求的检测是有规
律的:每个机器周期的S5P2
进行检测
当外设准备就绪,向CPU发出中断请求信号。CPU暂停当
前程序,执行I/O操作。当I/O操作结束,CPU仍继续被中断 的工作。
第七章 IO接口_AD_DA技术详解
8155口地址分布
AD0~AD7 选 中 寄 存 器 A7 A6 A5 A4 A3 A2 A1 A0
× × × × ×
0
0
0
内部命令寄存器
× × × × ×
0
0
1
通用I/O口A寄存器
× × × × ×01 Nhomakorabea0
通用I/O口B寄存器
× × × × ×
0
1
1
口C:通用I/O口或控制口
× × × × ×
1
0
常用的外围I/O接口芯片有:
(1)8255A:可编程的通用并行接口电路(3个8位
I/O口)。
(2)8155H:可编程的IO/RAM扩展接口电路(2个8 位I/O口,1个6位I/O口, 256个RAM字节单元,1个14 位的减法定时器/计数器)。 可与MCS-51单片机直接连接,接口逻辑十分简单 此外,74LS系列的TTL电路也可以作为MCS-51的扩展 I/O口,如74LS244、 74LS273等。
图 6-12 8155方式4的逻辑结构图
图6-24 8155A状态标志寄存器格式 D7 D6 D5 D4 D3 D2 D1 D0
×
TIMER
INTB
BFB
INTRB
INTEA
BFA
INTRA
5)内部定时器(8155A定时器的格式如下 )
D7 04H T7 D6 T6 D5 T5 D4 T4 D3 T3 D2 T2 D1 T1 D0 T0
计数长度的低 8 位 05H M2 M1 T13 T12 T11 T10 T9 T8
定时器方式
计数长度的高 6 位
8155A定时器的格式中M2、M1用于设置定时器的输出方式,具体 如图所示。
单片机第7章
P3口: P3口: 准双向口(无三态功能的I/O口) 准双向口(无三态功能的I/O口)
与P1口类似但由于具有第二功能,因此有第二功能控制电 P1口类似但由于具有第二功能,因此有第二功能控制电 路
总结四个口的结构有:
1. 由于四个口在一般使用时功能不同,因此内 部结构略有不同 2. P0口常作外数据/地址低8位总线使用,因此 P0口常作外数据/地址低8 有总线/ 有总线/一般口控制开关并具有三态输出 3. P2口常作外地址高8位总线使用,因此也有总 P2口常作外地址高8 线/一般口控制开关电路 4. P3口由于有第二功能,因此有第二功能控制 P3口由于有第二功能,因此有第二功能控制 电路 5. P0、P1、P2、P3的输入电路结构相同 P0、P1、P2、P3的输入电路结构相同
7.2.2
1
MCS-51内部并行I/O口的应用 MCS-51内部并行I/O口的应用
直接用作一般输入/ 直接用作一般输入/输出端口
1. 读端口数据----得到的是端口锁存器的内容(非端口 读端口数据----得到的是端口锁存器的内容(非端口 线上的状态) 2. 写端口数据----数据将经锁存器输出到端口线上 写端口数据----数据将经锁存器输出到端口线上 3. 读端口线状态---先对端口输出(写)全“1”(控制关 读端口线状态---先对端口输出(写)全“ 断MOS管),后读端口 MOS管),后读端口
P0口: P0口:
标准双向口(具有三态输出功能的I/O口) 标准双向口(具有三态输出功能的I/O口)
当MUX接通上側时作为数据总线及低8位地址输出 MUX接通上側时作为数据总线及低8 当MUX接通下側时作为具有三态输出/输入并行口 MUX接通下側时作为具有三态输出/
P1口: P1口: 准双向口(无三态功能的I/O口) 准双向口(无三态功能的I/O口)
并行IO口及其应用课件
21
高电压光电隔离输入
22
23
I/O口的实例仿真
q 例4.3 报警器的proteus仿真及C语言程序设计
q 设计要求 :如图4.27所示,用P1.0输出1KHz和500Hz的 音频信号驱动扬声器,作报警信号,要求1KHz信号响 100ms,500Hz信号响200ms,交替进行,P1.7接一开关 进行控制,当开关合上报警信号响,当开关断开报警信 号停止。
25
4.3 I/O口应用实例与仿真
I/O口的实例仿真
q 例4.4广告灯(查表方式)的proteus仿真及程序设计
q 设计要求 :如图4.29所示,利用查表的方法,使端口P1 做单一灯的变化:左移2次,右移2次,闪烁2次(延时 的时间0.2秒)。
q 广告灯的仿真电路原理图 (见教材图4.29 ) q 元器件选取
q 灌电流和拉电流反应了管脚的带负载能力,灌电流比拉 电流大,因此灌电流带负载能力强。
q 限流电阻的选择要根据灌电流、拉电流的大小进行选择。
19
大功率负载驱动
q 当驱动大电流负载,或驱动高电压负载时,需要采用以 下的电路形式。
q 当驱动强电电路时,弱电电源与强电电源需要隔离,此 时需要使用光电隔离器件。
q 报警器的仿真电路原理图 (见教材图4.27) q 元器件选取
• ①AT89C52:单片机;②RES:电阻;③CRYSTAL:晶振; ④CAP、CAP-ELEC:电容、电解电容;⑤SPEAKER:扬 声器;⑥SW-SPDT:单刀双掷开关;⑦9012:PNP三极管
24
4.3 I/O口应用实例与仿真
I/O口的实例仿真
• 汇编语言步骤如下:①把控制码建成一个表TABLE;②利用 MOV DPTR,#TABLE指令来使数据指针寄存器指到表的开 头;③利用MOVC A,@A+DPTR的指令,根据累加器的值 再加上DPTR的值,就可以使程序计数器PC指到表格内所要 取出的数据。
IO接口电路
T1不能使用方式3工作
第十二页,共三十八页。
5.计算(jì suàn)时间常数X(计算(jì suàn)初值) 计数功能:X= 2n -计数值(shùzí) n:8/13/16
AJMP IOINT
ORG 0100H MAIN:SETB IT0
SETB EX0
SETB EA HERE:SJMP HERE
ORG 0500H
IOINT:MOV A,#0FFH
MOV P1,A
MOV A,P1
SWAP A
MOV P1,A
RETI
MCS-51
P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 INT0
1
16 位
2
8 位自动重装
3
T0 为两个 8 位
=1,门控方式(外部启动):TRx=1且引脚INTx=1才启动。
确定定时器工作方式指令:MOV TMOD,#方式字 例:设T0用方式2非门控定时,T1用方式1门控计数。
MOV TMOD,#
第八页,共三十八页。
2.TCON定时器控制(kòngzhì)/状态寄存器
SWAP A
MOV P1,A
SJMP MAIN
MCS-51
P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0
第五页,共三十八页。
2.中断传送方式(fāngshì):
先设好开关状态,然后发出中断请P MAIN
ORG 0003H
5=.1恢,复计初数值功方能式,(计自数动引重脚装/T软0(件T1重)输装入)的负脉冲。
第7章MCS-51单片机的并行IO接口及扩展
2. P1口一个位的结构
读锁存器 Vcc
*
上拉电阻 P1.x
内部总线 写
D Q CP Q T2
读引脚
P1口的作用特点: 1)内部具备上拉电阻,执行输出功能是,无须连接外部上拉电阻。 2)若要执行输入功能,必须先输出高电平(1)才能读取该口所 连接的外部数据。
• 例7-2-1 试编出模拟图7-2-5中电路的程序。
• 在51系列的C语言中对四个I/O端口进行编程,必 须要利用8051的C语言头文件,其中给出P0~P3 标号的定义。并且可以使用Px^y格式对P0~P3端 口的单个位进行表示,其中x是端口0、1、2或3, y是该端口的位0~7,例如P1^7指示P1.7。
8255A的内部结构如图7-4-2所示,由三部分电路组成: 与CPU的接口电路、内部控制逻辑电路和与外设连接的输 入/输出接口电路。 (1)与CPU的接口电路 (2)内部控制逻辑电路 (3)输入/输出接口电路
图7-4-2 8255A的内部结构
表7-4-1 8255A的端口分配及读/写功能
7.4.2 8255A的工作方式及其初始化编程
地址 控制
Vcc * 上拉电阻 P2.x
D Q CP Q
MUX
T2
4 . P3口 P3口一个位的结构
选择输出功能 读锁存器 Vcc * 上拉电阻 P3.x 内部总线 写 D Q CP Q T2
读引脚
第二输入功能
P3口的第二功能
P3引脚 P3.0 P3.1 P3.2 兼用功能 串行通讯输入(RXD) 串行通讯输出(TXD) 外部中断0(INT0)
7.3 用TTL芯片扩展简单的I/O接口
第7章单片机并行IO口的扩展
7.3.4 8255A的控制字 8255A有三种工作方式: (1) 方式0:基本输入输出; (2) 方式1:选通输入输出; (3) 方式2:双向传送(仅A口有)。 1.工作方式选择控制字
三种工作方式由方式控制字来决定。 控制字格式如下。
C口上半部分(PC7~PC4)随A口称为A组, C口下半部分(PC3~PC0)随B口称为B组。 其中A口可工作于方式0、1、和2,而B口只能工作在 方式0和1。
• 分析:由图7-8可知,P2.7=0才选中该片8255,A1 A0(P2.1 P2.0)为00 01对应PA口和PB口、为11时对应控制 口。其余地址写1,A口、B口、控制口地址分别为7CFFH、 7DFFH、7FFFH。设定PA口方式0输出, B口方式0输入,控
7.1.3 I/O端口的编址方式 I/O端口编址是给所有I/O接口中的寄存器编址。
I/O端口编址两种方式:独立编址与统一编址。 1.独立编址方式
I/O寄存器地址空间和存储器地址空间分开编址, 但需专门读写I/O的指令和控制信号。 2.统一编址方式
I/O寄存器与数据存储器单元同等对待,统一编址。 不需要专门的I/O指令,直接使用访问数据存储器。 的指令进行I/O操作,简单、方便且功能强。
(2)任一个端口都可以设定为输入或输出,各端口 的输入、输出可构成16种组合。
(3)数据输出锁存,输入不锁存。
例 假设8255A的控制字寄存器地址为FF7FH,则令A口 和C口的高4位工作在方式0输出, B口和C口的低4位 工作于方式0输入,初始化程序:
MOV DPTR,#0FF7FH ;控制字寄存器地址送DPTR
2.I/O口接口的作用
CPU与I/O设备交换信息情况较为复杂,所以通常 I/O设备并不直接与CPU进行信息交换,而是通过相应 的输入/输出接口(称为I/O接口)来进行的。I/O接 口是CPU和I/O设备之间进行信息交换的中间环节,其 主要功能如下: (1)对输入输出数据进行缓冲、隔离和锁存,实现 速度匹配。 (2)完成信息格式的变换,如串并转换。 (3)实现电气特性的匹配。 (4)选择设备或地址译码等。
并行io口的工作原理
并行io口的工作原理咱们今天来聊聊并行 I/O 口这个有趣的玩意儿。
并行 I/O 口就像是一个多面手,能同时处理好多事情。
想象一下,它就像是一个有好多只手的小超人,可以一下子抓住好多东西。
比如说,它可以同时接收好几个数据,就像一只手抓一个苹果,另一只手抓一个香蕉,还有的手抓着橙子、草莓啥的。
这可太厉害了,一下子就能处理好多信息,速度那叫一个快!那它是怎么做到的呢?其实啊,并行 I/O 口里面有好多小通道,就像是一条条小路。
这些小路可以让数据同时通过,就像好多辆车在不同的车道上一起跑。
当我们要给并行 I/O 口发送数据的时候,就像是给它送礼物。
这些数据会排好队,一个一个地走进对应的小通道,然后一下子就都到了并行 I/O 口那里。
反过来,如果并行 I/O 口要把数据送出去,那就像是它把自己的宝贝分享给大家。
数据们也会整整齐齐地通过那些小通道,快速地跑出去。
而且哦,并行 I/O 口还很聪明呢。
它能知道哪些数据是重要的,哪些可以先放一放。
就像它能分辨出哪个是最甜的水果,先尝尝那个。
比如说,如果有紧急的数据需要处理,它会优先照顾这些数据,让它们快点通过。
还有啊,并行 I/O 口还得和其他小伙伴好好配合。
比如说,和处理器呀、内存呀等等。
它们就像是一个团队,一起完成各种各样的任务。
有时候,并行 I/O 口可能会有点忙不过来,就像一个人手里拿了太多东西,有点手忙脚乱。
这时候,就得靠其他小伙伴来帮帮忙,一起把事情搞定。
总的来说,并行 I/O 口就像是我们生活中的超级小能手,能快速又高效地处理好多数据,让我们的电子设备变得更加聪明和厉害!怎么样,是不是觉得并行 I/O 口很有趣呀?。
第7章 并行IO接口
第7章并行I/O接口7.1概述图7-1微型机和外设的接口示意图2电子商务基础教程(第二版) 7.1.1 I/O接口的作用1. 实现与不同外设的速度匹配2. 改变数据传送方式3. 改变信号的性质和电平7.1.2外部设备的编址1. 外设端口的单独编址图7-2外设端口的编址方式示意图网络工程技术与实验教程 32. 外设端口和存储器统一编址7.1.3 I/O数据的四种传送方式1. 同步传送图7-3 CPU和开关电路的接口2. 异步传送图7-4 I/O数据的异步传送示意图3. 中断传送图7-5 I/O数据的中断传送示意图4电子商务基础教程(第二版)4. DMA传送图7-6 DMA控制器工作框图网络工程技术与实验教程 5 7.1.4 I/O接口的类型1. 串行I/O接口2. 并行I/O接口7.2 MCS-51内部并行I/O端口及其应用7.2.1 MCS-51内部并行I/O端口6电子商务基础教程(第二版)图7-7 MCS-51各通道某位的结构网络工程技术与实验教程7 7.2.2 MCS-51内部并行I/O端口的应用1. I/O口直接用于输入/输出图7-8例7-1附图2. 8位I/O端口改装为非8位端口3. MCS-51 对外部三态门和锁存器的接口图7-10 8031和74LS244的接口图7-11 8031和74LS373的接口8电子商务基础教程(第二版) 7.3并行I/O接口芯片7.3.1Intel 8255A1. 内部结构和引脚功能图7-12 8255A内部结构网络工程技术与实验教程9 2. 8255A控制字和状态字图7-13 8255A方式控制字格式图7-14 C口单一置复位控制字格式10电子商务基础教程(第二版)图7-15模式1下的状态字格式3. 8255A工作模式图7-16模式2下的状态字格式图7-17 A口模式1选通输入方式下工作示意图图7-18 B口模式1选通输出方式下工作示意图图7-19 A口在模式2方式下的工作示意图7.3.2 Intel 81551. 内部结构和引脚功能图7-20 8155内部结构图7-21 8155命令字格式2. CPU对8155 I/O口的控制图7-22 8155状态字格式3. 8155工作方式图7-23选通I/O数据输入示意图图7-24选通I/O数据输出示意图4. 8155内部定时器及使用图7-25 8155定时器长度字格式及T/OUT输出波形7.4 MCS-51并行I/O端口的扩展7.4.1借用外部RAM地址扩展I/O端口图7-26 8031与打印机的接口7.4.2采用8255A扩展I/O端口图7-27 8031通过8255A与打印机的接口7.4.3采用8155扩展I/O端口1. 8位地址的全译码法图7-28 8031和8155的接口2. 8位地址的线选法3. 16位地址的线选法7.5 MCS-51对LED/LCD/键盘的接口7.5.1 MCS-51对LED的接口1. LED数码显示管显示原理图7-29八段LED数码显示管原理和结构2. MCS-51 对LED的显示图7-30 8031通过8155对LED的接口图7-31例7.7的显示缓冲区7.5.2 MCS-51对LCD的接口1. LCD显示器的基本结构和原理图7-32七段LCD液晶显示器原理和结构2. LCD显示器的驱动原理图7-33 LCD驱动和显示电路3. LCD显示器的主要参数4. MCS-51对字段式LCD的接口图7-34 TSC7211AM原理框图图7-35 YXY4501引脚分配图7-37 412位LCD显示程序框图7.5.3 MCS-51对非编码键盘的接口1. MCS-51对独立式非编码键盘的接口图7-38 8031对独立式键盘的接口2. MCS-51对行列式非编码键盘的接口图7-39 8031对键盘/LED的接口图7-40键盘按键排布图图7-41 SCAN程序流程图7.5.4键盘/显示系统图7-42键盘/显示系统主程序流程图7.6 MCS-51 内部定时器/计数器7.6.1 MCS-51对内部定时器/计数器的控制1. 定时器控制寄存器TCON图7-43定时器控制寄存器TCON各位定义2. 定时器方式寄存器TMOD图7-44定时器方式控制寄存器TMOD格式图7-45定时器/计数器T0方式控制逻辑7.6.2工作方式图7-46定时器/计数器的TH和TL分配3. 方式24. 方式37.6.3 MCS-51对内部定时器/计数器的初始化1. 初始化步骤2. 计数器初值的计算3. 定时器初值的计算7.6.4应用举例图7-47例7-11附图习题与思考题7.1什么叫I/O接口?I/O接口的作用是什么?7.2外设端口有哪两种编址方法?各有什么特点?7.3 I/O数据有哪四种传送方式?各在什么场合下使用?7.4结合图7-6说明DMA传送的工作过程。
第七章 接口与并行通信
第一讲:第七章接口与并行通信回顾:微机系统结构及控制信号的名称和作用。
本讲重点:I/O接口概述,CPU与I/O接口,I/O接口与系统的连接。
讲授内容:7.1 CPU与外设之间的数据传输一.CPU与I/O接口接口电路按功能可分为两类:①是使微处理器正常工作所需要的辅助电路:时钟信号或中断请求等;②是输入/输出接口电路:CPU与外部设备信息的传送(接收、发送)。
最常用的外部设备:如键盘、显示装置、打印机、磁盘机等都是通过输入/输出接口和总线相连的,完成检测和控制的仪表装置也属于外部设备之列,也是通过接口电路和主机相连。
1.为什么要用接口电路:需要分析一下外部设备的输入/输出操作和存储器读/写操作的不同之处:存储器都是用来保存信息的,功能单一,传送方式单一(一次必定是传送1个字节或者1个字),品种很有限(只有只读类型和可读/可写类型),存取速度基本上和CPU的工作速度匹配.。
外部设备的功能多种多样的(输入设备,输出设备,输入设备/输出设备),信息多样(数字式的,模拟式的),信息传输的方式(并行的,串行的),外设的工作速度通常比CPU的速度低得多,而且各种外设的工作速度互不相同,这也要求通过接口电路对输入/输出过程起一个缓冲和联络的作用。
注:接口电路完成相应的信号转换、速度匹配、数据缓冲等功能2.接口的功能(8种):⑴寻址能力:对送来的片选信号进行识别。
⑵输入/输出功能:根据读/写信号决定当前进行的是输入操作还是输出操作。
⑶数据转换功能:并行数据向串行数据的转换或串行数据向并行数据的转换。
⑷联络功能:就绪信号,忙信号等。
⑸中断管理:发出中斯请求信号、接收中断响应信号、发送中断类型码的功能。
并具有优先级管理功能。
⑹复位:接收复位信号,从而使接口本身以及所连的外设进行重新启动。
⑺可编程:用软件来决定其工作方式,用软件来设置有关的控制信号。
⑻错误检测:一类是传输错误。
另—类是覆盖错误。
注:一些接口还可根据具体情况设置其它的检测信息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用于中断控制方式。
方式2工作时的控制信号和状态信号
PA7~PA0
INTE1
外设响应信号 表示外设已经接收到数据 ACKA OBFA STBA IBFA INTRA
2
PC6
PC7
INTE2 PC4
WR
输出缓冲器满信号 表示CPU已经输出了数据
数据选通信号输入端 表示外设已经准备好数据 输入缓冲器满信号输出端 表示A口已经接收数据 中断请求信号输出端
通过同名管脚上所加电平的高 低来控制发光二极管是否点亮 从而显示不同字形。
D7 D6 D5 D4 D3 D2 D1 D0
dp g
f
e
d
c
b
a
如共阴极时,管脚分别加上 0 1 1 1 1 1 1 1 即 7FH时, 显示“8”
D7
D6
D5
D4
D3
D2
D1 D0
dp g
f
e
d
c
b
a
如共阳极时,管脚分别加上 1 1 1 1 1 000 即 F8H时, 显示“7”
1.方式0
常用于连接简单外设(适于无条件或查询方式) 没有规定固定的应答联络信号,可用A,B,C三个 口的任一位充当查询信号,其余I/O口仍可作为独 立的端口和外设相连。 无条件传送不需要应答信号;查询传输需要应答 信号,常将A端口和B端口作为数据的输入或输出 口,使C口的某些位作状态输入。
7.5 MCS-51对LED/LCD/键盘的接口 LED显示器中的发光二极管共有两种连接方法,一种 是共阴极连接,另一种共阳极连接。 共阳极:正极均连接在一起,作为公共阳极与电源正 极相连。共阴极:各发光二极管的负极均连接在一起, 作为公共阴极与电源负极相连。
1. LED数码显示管显示原理 为了显示数字或字符,必 须对数字或字符进行编码。 七段数码管加上一个小数 点,共计8段。因此为 LED显示器提供的编码正 好是一个字节
2.方式1
也叫选通的输入输出方式。 端口A和端口B仍作为两个独立的8位I/O数据通道, 可单独连接外设,通过编程分别设置它们为输入 或输出。 利用一组选通控制信号控制端口A和端口B的数据 输入输出,C口的部分位用作选通控制信号。 方式1适用于中断方式下的输入输出。
2.方式1
如果端口A、B都工作在方式1,端口C则要有6位(分 成两个3位)分别作为A口和B口的应答联络线,数位 和信号之间的对应关系是固定的,程序员无法改变。 其余2位仍可工作在方式0,可通过编程设置为输入 或输出。 A口、B口在作为输入和输出时的选通信号不同。
P250~254
8255A的工作方式
8255A有三种工作方式,用户可以通过编程来设置 方式0:基本输入输出方式 方式1:选通输入输出方式 方式2:双向选通传送方式
8255A在不同的工作方式下,其输入/输出操作以 及外设的连接方法也不同。
1.方式0
也称为基本输入输出方式。 相当于三个独立的8位简单接口。每个端口都可 以提供基本的输入输出操作。各端口既可设置为 输入口,也可设置为输出口,但不能同时实现输 入及输出,各端口之间没有规定必然的关系。 C端口可以是一个8位的简单接口,也可以分为两 个独立的4位端口,高4位为一个端口,低4位为 一个端口。
8255A送往CPU的中断请求信号,要求CPU读取外设数据。 INTR置位的条件是STB为高,且IBF为高,中断允许信号INTE为 高。
方式1中断控制
INTE ——中断允许信号
置位允许中断,复位禁止中断 对INTE的操作通过写入端口C的对应位实现。 INTE对应端口C的作应答联络信号的输入信号的那一位, 只要对该位置位/复位就可以控制INTE 端口A的INTEA对应PC4置位来实现 对PC4置1,使A端口处于中断允许状态; 对PC4置0,使A端口处于中断屏蔽状态 端口B的INTEB对应PC2置位来实现 对PC2置1,使B端口处于中断允许状态; 对PC2置0,使B端口处于中断屏蔽状态
4. 8155 内部定时器及使用
③ MCS-51单片机的定时器计数器有两种计数脉冲。 定时功能时,以机器周期为计数脉冲;计数功能时, 从芯片外部引入计数脉冲。但8155的定时器/计数器, 不论是定时功能还是计数功能都是由外部提供计数脉 冲,其信号引脚是TIMERIN。 ④ MCS-51单片机的定时器/计数器,计数溢出时, 自动置位TCON寄存器的计数溢出标志位(TF),供 用户查询或中断方式使用;但8155的定时器/计数器, 计数溢出时向芯片外部输出一个信号 (TIMEROUT)。而且这一信号还有脉冲和方波两 种形式,可由用户进行选择。
I/O P255 过程
7.3.2 Intel 8155
1. 内部结构和引脚
1. 内部结构和引脚
1. 内部结构和引脚
1. 内部结构和引脚
1. 内部结构和引脚
2. CPU对8155 I/O口的控制
8155端口地址 8155有A口、B口、C口和定时器/计数器低8位以及 定时器/计数器高8位五个端口,另外8155内部还有 一个命令/状态寄存器,所以8155内部共有6个端口。 对它们只需要使用 AD0~AD3即可实现编址。
A端口方式1输入控制信号
数据选通信号输入端 表示外设已经准备好数据 STBA IBFA 输入缓冲器满信号输出端 表示A口已经接收数据 PC3
PC6 、PC7
2
PA7~PA0
INTEA
PC4
PC5
RD
INTRA
I/O 中断请求信号输出端 请求CPU接收数据
中断允许信号 控制中断允许或中断屏蔽
B端口方式1输入控制信号
PC5
RD
PC3 PC2~PC0
I/O
方式2工作时的控制信号和状态信号
PA7~PA0
INTE1
PC6
ACKA OBFA STBA IBFA INTRA
2
PC7
INTE2 PC4
WR
用PC6设置INTE1(输出) 用PC4设置INTE2(输入) 输入和输出中断通过 或门输出INTRA信号
PC5
RD
PC3 PC2~PC0
A端口方式1输出控制信号
WR
PA7~PA0 INTEA
外设响应信号 表示外设已经接收到数据 ACKA OBFA 输出缓冲器满信号 表示CPU已经输出了数据
PC6
PC7
PC3 PC4 、PC5 中断允许信号
2
INTRA
I/O 中断请求信号 请求CPU再次输出数据
B端口方式1输出控制信号
WR
PB7~PB0
由外设提供给8255A的输入信号,当其有效时,8255A接收外设送 来的1个8位数据,输入缓冲器得到一个新的数据。
IBF(Input Buffer Full)——输入缓冲器满信号,高电 平有效
8255A输出的状态信号。当其有效时,表示当前已有一个新的数据 在输入缓冲器中。
INTR(Interrupt request)——中断请求信号,高电平 有效
本章内容
7端口及应用 并行I/O接口芯片 8255A 8251 MCS-51并行I/O端口的扩展 MCS-51对LED/LCD/键盘的接口 MCS-51内部定时/计数器
并行接口电路8255A
8255A是Intel公司生产的通用 可编程并行I/O接口芯片。40引 脚、双列直插封装 有三个并行I/O口,又可通过编 程设置多种工作方式,价格低廉, 使用方便,可以直接与Intel系列 的芯片连接使用,在中小系统中 有着广泛的应用。
ACK(acknowledge)——响应信号,低有效
外设的响应信号,指示8255A的端口数据已由外设接收
INTR——中断请求信号,高有效
当输出设备已接收数据后,8255A输出此信号向CPU提 出中断请求,要求CPU继续提供数据
端口A的INTEA对应PC6 端口B的INTEB对应PC2
8255A有三种工作方式,用户可以通过编程来设置
2. MCS-51对LED的显示
1
9
9
5
.
6
RAM区建显示缓冲区: 用于存放相应LED显示 管欲显示字符在字形码 表中的地址偏移量。
p271
7.5.3 MCS-51对非编码键盘的接口
键盘可分为独立联接式和行列式两类。 每一类又可根据对按键的译码方法不同分为编码键 盘和非编码键盘两种。 编码键盘 通过硬件电路产生被按按键的键码和一个选通脉冲, 选通脉冲常作CPU的中断请求信号。 非编码键盘 : 每个按键的作用只是使相应接点接通或断开,每个 按键的键码并非硬件产生,而是由相应扫描处理程 序对它扫描形成的。硬件电路简单,在微机中得到 广泛应用。
INTEB
外设响应信号 表示外设已经接收到数据 ACKB OBFB INTRB 输出缓冲器满信号 表示CPU已经输出了数据
PC2
PC1
PC0 中断允许信号
中断请求信号 请求CPU再次输出数据
方式1输出联络信号
OBF(output buffer full)——输出缓冲器满信 号,低有效
8255A输出给外设的一个控制信号,当其有效时,表示 CPU已把数据输出给指定的端口,外设可以取走。
8155的命令字格式
2. CPU对8155 I/O口的控制
8155的状态字 状态字只能读不能写,所以8155的命令字和状态字共 用一个地址。状态字用于寄存各端口及定时器/计数器 的工作状态。
3. 8155工作方式
3. 8155 工作方式
C口可以设置成四种工作方式中的一种 即:输入、输出、 A口控制、A和B口控制
也叫双向传输方式-------可以既作为输入口,又作 为输出口。 只有端口A可以工作于方式2,需要利用端口C的5 个数位作控制信号和状态信号。 当A口工作于方式2时,B口可工作于方式1(此时C 口的所有位都用作选通控制信号的输入输出),也 可工作于方式0(此时C口的剩余位也可工作于方式 0)。