第8章可编程接口芯片及应用(1)
微型计算机原理及接口技术第8章8253
计数器/定时器的内部结构
8253内部包含三个完全一样的计数器/定时器通道, 每个通道的工作是完全独立的
每个通道包含:
① 一个8位控制字寄存器:由编程设定该通道的工作方式、读 写格式和数制
② 一个16位计数初值寄存器:由程序设定初始计数值,可分 成高8位和低8位两个部分,可作8位寄存器使用
③ 一个计数器执行部件(实际的计数器):实际上是一个16 位减法计数器,它的起始值是初始寄存器的值,由程序设 定。可分成高8位和低8位两个部分
优点:电路结构简单,价格便宜,通过 改变电阻或电容值,可以在一定的定时 范围内改变定时时间
缺点:电路在硬件已连接好的情况下, 定时时间和范围就不能由程序来控制和 改变,而且定时精度也不高
555定时器外部引脚和内部结构
可编程硬件定时
定时原理:利用可编程定时器/计数器芯 片附加硬件电路实现定时
输出信号的波形由工作方式决定,同时还要受 到GATE引脚上的门控信号控制,它决定是否 允许计数
计数器/定时器的定时功能
当加到CLK引脚上的脉冲为精确的时钟脉 冲,可实现定时的功能。
定时时间决定于计数脉冲的频率和计数 器的初值。
定时时间=时钟脉冲周期×预置的计数初值
计数器/定时器的计数功能
方式1:可编程单稳态输出方式
写入控制字后OUT初始状态:高电平 门控信号GATE的作用:①高电平或低电平均不起作用;
②只有在GATE发生由低到高的正跳变,输出OUT由高
到低跳变,并开始计数;③在计数过程中,若GATE产 生负跳变,不影响计数;④在计数器回0之前,GATE 又产生由低到高的正跳变,8253又将初始值装入,重 新开始计数,使生成脉冲加宽。 计数过程中OUT状态:保持低电平 计数结束OUT状态:发生由低到高的正跳变。 计数器回0后,是否重新计数:否 应用:用于定时
第十九讲 可编程接口芯片及应用(8250A)(2)
第八章 可编程接口芯片及应用技术
4)具有独立的接收时钟输入引脚。 )具有独立的接收时钟输入引脚。 5)有CPU发向调制解调器的信号,还有能接收 ) 发向调制解调器的信号, 发向调制解调器的信号 并记录由调制解调器发送到计算机的状态信息。 并记录由调制解调器发送到计算机的状态信息 。 可方便地与MODEM相连。 相连。 可方便地与 相连 6)具有带优先级排序的中断系统,有多种中断 )具有带优先级排序的中断系统, 源。 7)具有可记录所有状态信息的状态寄存器和检 ) 查起始位出错的能力。 查起始位出错的能力。
图 6 33 传 输 线 控 制 寄 存 器 LCR LCR
的 0= 1= 0= 1= 00=5 01=6 10=7 11=8 1 (D4=1,D3=1, 0 , 0=1 1= 6~8 SOUT 2 的 5 1.5
的 控 制 字 格
, D4=0,D3=1, 1) 0= 1=
(DLAB) 0= RBR TBR IER 1= 存器 DLL DLH
第八章 可编程接口芯片及应用技术
第十九讲 7.3 可编程串行输入 输出接口芯片 可编程串行输入/输出接口芯片 输出接口芯片8250A
7.3.2 Intel 8250A
返回本章首页
第八章 可编程接口芯片及应用技术
7.3.2 Intel 8250A
1.主要功能 . INS 8250的主要功能有: 的主要功能有: 的主要功能有 1)8250支持异步通信规程。 ) 支持异步通信规程。 支持异步通信规程 2)8250的异步通信的数据格式可由 ) 的异步通信的数据格式可由 用户编程选择。 用户编程选择。 3)内部具有可编程时钟产生电路。 )内部具有可编程时钟产生电路。
AL,0EH ;7位字符,1位停止位,奇校验 , 位字符, 位停止位 位停止位, 位字符 DX,AL ;写入 , 写入LCR控制字 控制字 DX,2FCH , AL,03H , DX,AL , DX,2F9H ;设定 , 设定IER口地址 口地址 ;禁止一切中断 ;设定MCR口地址 设定 口地址 ;置MCR控制字 控制字
MCU8
BUSY
打印机的工作时序
START: …… MOV MOV OUT DX,030EH AL,10000011B DX,AL
MOV
OUT MOV MOV GOON:MOV
AL,00001101B
DX,AL CX,100 SI,OFFSET BLOCK DX,030CH
PWAIT: IN
AND JNZ
PC7-PC4
PC3-PC0
读/写 逻辑控制
PB7-PB0
CPU接口
内部逻辑 8255A内部结构图
外设接口
3.8255A的外部连接特性
D0 D1 D2 D3 D4 D5 D6 D7 A0 A1 CS RD WR RESET 34 33 32 31 30 29 28 27 9 8 6 5 36 35 4 3 2 1 40 39 38 37 18 19 20 21 22 23 24 25 14 15 16 17 13 12 1 10 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7
5、控制电路
并行接口连接外设示意图
数据总线
数据输入准备好
控制寄存器 数据输入回答 数据输入 输 入 设 备
读出信号
写入信号 复位 CPU 准备好 中断请求
输入缓冲寄存器
输出缓冲寄存器 片选 A0 A1 状态寄存器
数据输出
地址 地址 译码
数据输出准备好
数据输出回答
输 出 设 备
输入过程
外设将数据=>接口 →状态线“数据输入准备好”=1; →接口把接收到数据输入缓冲寄存器; →数据输入回答=1,作为对外设响应信号; →外设撤消“数据”和“数据输入准备好”信号; CPU从接口读取数据 →接口收到数据,设置“输入准备好”状态位; →供给CPU查询 或向CPU发中断请求; → CPU从接口读取数据, 接口自动清除状态寄存器输入准备好状态位(准备好); →数据总线处于高阻状态。开始下一个输入过程
自动控制原理目录
第一章绪论(6学时)
微型计算机发展概况、数制和码制。
第二章 8086 系统结构(8学时)
8086CPU结构、8086CPU的引脚及其功能、8086存储器组织、8086系统配置、8086CPU 时序。
第三章 8086的寻址方式和指令系统(10学时)
8086的寻址方式、指令的机器码表示方法、8086的指令系统。
第四章汇编语言程序设计(10学时)
汇编语言程序格式、MASM中的表达式、伪指令语句、程序设计方法、DOS系统功能调用。
第五章存储器(6学时)
存储器分类、随机存取存储器RAM、只读存储器ROM、CPU与存储器的连接。
第六章 I/O接口和总线(6学时)
I/O接口的功能、简单的输入输出芯片、I/O端口及其编址方式、I/O端口地址译码、CPU 与外设间的数据传送方式。
第七章可编程外围接口芯片8255A及应用(4学时)
8255A的结构和功能、8255A的控制字及初始化编程、8255A工作方式和C口状态字、8255A的应用举例。
第八章可编程计数器/定时器8253及应用(4学时)
8253的内部结构与引脚信号、8253的初始化编程、8253的工作方式、8253与系统的连接、8253的应用举例。
第九章微型计算机中断系统(8学时)
中断处理过程、中断优先级和中断嵌套、可编程中断控制器8259A。
第十章 A/D、D/A转换(6学时)
A/D转换器工作原理、D/A转换器工作原理、转换器与CPU连接。
第十一章高档微处理器(6学时)
CPU内部结构、管脚信号说明、寄存器组成。
可编程IO接口
8.2 可编程的并行接口芯片8255A
8.2.1 8255A的内部结构
• • • • • • •
它由以下几个部分组成: 1.数据总线缓冲器 2.并行I/O端口(A、B、C口) 3.A组和B组控制电路 A组:A口和C口上半部。 B组:B口和C口下半部。 A组控制和B组控制结合,组成控制字寄存器,接收CPU写入的方式选择 控制字和对C口按位置位/复位控制字。 • 4.读/写控制逻辑 • 8.2.2 8255A的引脚特性
A组控 制 A组端口A (8) I/O PA7~PA0 PA
D7~D0
数据总线 缓冲器
8位内部 数据总线
A组端口C 上半部 (4) B组端口C 下半部 (4)
I/O PC7~PC4
I/O PC3~PC0
RD WR
A1 A0 RESET
读/写 控制 逻辑
B组控 制
B组端口B (8)
I/O PB7~PB0
并行接口的数据输出过程每当外设从接口取走一个数据后接口就会将状态寄存器中的输出缓冲器空状态位置1这个状态位可供cpu查询或向cpu提出中断请求以通知cpu当前可以往接口中输出数据82可编程的并行接口芯片8255a8218255a的内部结构a组控制和b组控制结合组成控制字寄存器接收cpu写入的方式选择控制字和对c口按位置位复位控制字
• •
2.按位置位/复位控制字 端口C的每一位都可以通过向控制字寄存器写入置位/复位控制字, 而使它相应位置位(为1)或复位(为0)。端口C置位/复位控制字 的格式如图所示。
• 8.2.4 8255A的工作方式 • 8255A具有3种工作方式,具体它的3个端口工作于何种方式,用户可 根据实际需要写入不同的控制字来加以选择。 • 1.方式0 ——基本输入输出方式 • 这种方式又称为基本输入输出方式,方式0的基本特点如下。 • ①此时8255具有A口、B口两个8位数据口,以及C口的高4位和低4位 两个4位数据口,它们可分别定义为输入口或输出口,各端口相互独 立,故共有16种不同的组合。例如定义A口和C口的高4位为输入口, B口和C口的低4位为输出口;或A口为输出,B口和C口的高4位、低4 位均为输入口等。 • ②定义为输出的口具有锁存数据的能力,而定义为输入的口无锁存能 力。 • ③在方式0下,C口有按位进行置位/复位的功能。 • ④CPU和8255A A口、B口之间传送数据只能用程控方式,即无条件 或查询方式,不能用中断方式。方式0最适合用于无条件传送,CPU 只需直接执行输入输出指令便可将数据读入或写出。 方式0也可用于 查询方式,由于没有指定C口的某些线作为专门的信号联络线,但是 用户可以自定义C口的某些线作为信号联络线,而A口和B口用来传送 数据。 • 2.方式1——选通输入输出方式 • 这种方式又称为选通输入输出方式。在这种方式下,A口和B口仍作 为数据的输出口或输入口,但数据的输入输出要在选通信号控制下来 完成。这些选通信号利用C口的某些位来提供。
单片机原理及应用第四版林立第八章选择题答案
第八章选择题答案(1)下列型号的芯片中,______是数模转换器。
A.74LS273B.ADC0809C.74LS373D.DAC0832(2)下列型号的芯片中,______是模数转换器。
A.74LS273B.ADC0809C.74LS373D.DAC0832(3)下列型号的芯片中,______是可编程并行I/O口扩展芯片。
A.74LS273B.8255A C.74LS373D.DAC0832(4)若8255A芯片的控制寄存器地址是0xe003,则其A口和B口的地址是______。
A.0xe001、0xe002B.0xe000、0xe001 C.0xe004、0xe005D.0x0a、0x0b(5)80C51用串行接口扩展并行I/O口时,串行接口工作方式应选择______。
A.方式0B.方式1C.方式2D.方式3(6)下列关于总线的描述中______是错误的。
A.能同时传送数据、地址和控制三类信息的导线称为系统总线B.数据既可由CPU传向存储器或I/O端口,也可由这些部件传向CPU,所以数据总线是双向的C.地址只能从CPU传向存储器或I/O端口,所以地址总线是单向的D.控制信息的传向由具体控制信号而定,所以控制总线一般是双向的(7)下列关于51单片机片外总线结构的描述中______是错误的。
A.数据总线与地址总线采用复用P0口方案B.8位数据总线由P0口组成C.16位地址总线由P0和P1口组成D.控制总线由P3口和相关引脚组成(8)下列关于地址锁存接口芯片74373原理的描述中______是错误的。
A.74373由8个负边沿触发的D触发器和8个负逻辑控制的三态门电路组成B.在74373LE端施加一个负脉冲触发信号后,8个D触发器都可完成一次“接通-锁存-隔离”的操作C. 80C51的ALE引脚是专为地址锁存设计的,其输出脉冲可用作74373的触发信号D.执行片外RAM写指令后,74373的输出端上为低8位地址,输入端则是8位数据(9)下列关于I/O口扩展端口的描述中______是错误的。
ATmega系列单片机原理及应用第8章ATmega硬件和实用程序课件
int main(void) {
io_init(); while(1) {
get_key(); } }
• void get_key(void)//键盘扫描子程序
•{
•
unsigned char tem;
•
int a[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
•
tem=PINC&0x03;// 读 键 盘 扫 描 信 号 PC0 及 PC1 状 态
(只取PC0、PC1),屏蔽高六位
if(tem!=0x03)//若PC不等于0x03,则有按键按下 { delay_1ms();//延时消抖动 tem=PINC&0x03;//再读键盘 if(tem!=0x03)//确认按键按下 { if(tem==0x01) //如为0x01则表示按下的为接
8.3.2 ATmega单片机与12864LCD液晶器的连接
图8.18 ATmega16和LCM12864连接图
8.3.3 串行接口数据传输描述 当PSB 脚接低电位(模块背面S/P 的短路电阻在
“S”侧) ,模块将进入串行模式在串行模式下将使 用二条传输线作数据的串行传送,主控制系统将配合 传输同步时钟(CLK)与接收串行数据线(SID) ,来完 成串行传输的动作。
器和驱动器的IC芯片,适用于各种RS—232C和V.28/ V.24的通信接口。MAX232芯片内部有一个电源电压变 换器,可以把输入的+5V电源电压变换成为RS—232C 输出电平所需的±10V电压。所以,采用此芯片接口 的串行通信系统只需单一的+5V电源就可以了。对于 没有±12V电源的场合,其适应性更强。加之其价格 适中,硬件接口简单,所以被广泛采用。
第八章 可编程计数器定时器8253及其应用
LSB=4 CR=4
CLK GATE
OUT CRCE 4 CRCE 2 4 CRCE 2 4 CRCE 2 4 CRCE 2 4
8253方式3 计数初值为奇数时的波形 CW=16H WR LSB=5
CR=5
CLK GATE OUT
CRCE
5 4
CRCE 2 5 2
CRCE 5 4
CRCE 4 3
8253方式0
两种特殊情况:
中途改变计数初值
CW=10H WR CR=3 CLK GATE OUT CR=3 LSB=3
LSB=3
CRCE 3 2
CRCE 1 3 2
1
0
8253方式1
2、方式1——可编程单稳态输出方式
时序图
CW=12H WR
LSB=3 CR=3
CLK GATE
OUT
CRCE
CRCE 3 2
1
0
8253方式1
工作过程
① 写入控制字,OUT立即变为高,并保持不变。 ② 写计数初值N,只有当GATE形成一个上升沿时,才在
下一个时钟脉冲的下降沿,将n装入实际计数器,同 时OUT由高变为低,开始减1计数(再来一个脉冲)。
③ 计数期间,OUT一直为低;当计数结束(计数值为0)
8253综述
Intel 8253是一种可编程的计数器/定时器芯片。 8253内部具有3个独立的16位计数器通道,通过对
它进行编程,每个计数器通道均有6种工作方式,并 且都可以按2进制或10进制2种格式进行计数,最高 计数频率能达到2MHz。 8253还可用作可编程方波频 率产生器、分频器、程控单脉冲发生器等。
教材第八章内容
第八章 可编程计数器/定时器8253及应用
单片机原理及其接口技术--第8章 MCS-51单片机系统接口技术
第二步是再识别是哪一个键按下。
键盘中哪一个键按下是由列线逐列置低电平后,检查行输 入状态,称为逐列扫描。其方法是:从列口第0位开始,依次输出
“0”,置对应的列线为低电平,然后读入行线状态,如果全为"1", 则所按下之键不在此列;如果不全为"1",则所按下的键必在此列, 而且是与0电平行线相交的交点上的那个键。
除抖动、排除多次执行键功能操作等功
能,可参考查询工作方式键盘程序。
主目录 上一页 下一页 结 束
单片机原理及其接口技术
8.1.4 键盘接口应用实例 例8.1 独立式键盘接口应用实例:电路原 理图如图所示,要求编程实现当按下任一键时,
数码管显示对应的键值。
主目录
上一页
下一页
结
束
单片机原理及其接口技术
的办法计算。
主目录
上一页
下一页
结
束
单片机原理及其接口技术 2) 定时扫描工作方式
开 始
定时扫描方式程序框图
键盘上有键闭合否
Y N KM=1 0 → KM 0 → KP Y N
Y 1 → KM
KP=1 N 查询键码 1 → KP
做两次查询,都有 键后进行键码计算。 主目录 上一页
返 回
下一页
结
束
3) 中断工作方式 单片机原理及其接口技术
1.独立式按键 2.行列式键盘
主目录
上一页
下一页
结
束
1. 独立式按键 单片机原理及其接口技术
(1).独立式按键接口结 构 一般用排阻进行上拉。
独立式按键的接口电路示意图 主目录 下一页 (b) 查询方式 结 束 (a) 中断方式 上一页
2.独立式按键的软件结构 单片机原理及其接口技术 下面是查询方式的键盘程序。 K0~K7为功能程序入口地址标号 PROM0~PROM7分别为每个按键的功能程序
第8章 8255A并行接口(修改)
PC3
A口的中断请求信号。当 其有效时,8255A的A口向 CPU申请中断,要求CPU从 A口取数
PA口作为输入口时,端口C规定有三条引脚线配合A口的方式1 输入。PC4作为STBA,PC5作为IBFA,PC3作为INTRA 其中:STBA:是选通输入,是外设送给8255A接口的;当STBA= 0时,8255A接收外设送来的一个8位数据,并存入相应的输入数 据寄存器中。 IBFA :输入缓冲器满,该信号是8255A发出的,作为STBA的应 答信号。 STBA 和IBF的关系:STBA 有效后,IBF变为高电平。(IBF由 STBA置位,RD复位)。 INTRA: 是8255A送往CPU的中断请求信号,当STBA和IBF均为 高电平时而且8255A的INTE=1 ,INTR变为有效高电平。 (即当选通信号结束时,表示已将一个外设数据存入输入数据寄存 器中,同时8255A允许中断,8255A向CPU发出中断请求信号。) INTE:中断允许信号,用于控制INTR是否能发出。对INTE的 设置通过对端口C的置位或复位指令实现(INTEA、INTEB对应 于PC4,PC2。)
入缓冲器 中断允许 式1,则端口C有3位固定地作为数据传送的控 信号。
制联络信号。
A口的输入缓冲器“满” 2. 由于工作在方式1时,端口C的某些数位自 信号,当其有效时表示A 口的输入缓冲器已暂存一 动地转为数据传送的选通和应答信号,故称该 个有效数据。
方式为选通的输入/输出(或有应答的输入/输 出)方式。
WAIT:IN AL,PORTC ;读打印机状态,若“忙” TEST AL,80H 则等待 JNZ WAIT MOV AL,BUFF ;数据输出到A口 OUT PORTA, AL MOV AL, 00H ;产生选通信号,打印机接 OUT PORTCN,AL 收数据,开始打印。 MOV AL,01H OUT PORTCN ,AL CODE ENDS END START
微机原理及接口技术课件第8章 常用可编程接口芯片
;执行锁存命令
MOV DX,CS+0
;计数器0端口地址
IN AL,DX 内容
;读计数输出锁存器中的低8位
MOV AH,AL
;保护
IN AL,DX 内容
;读计数疏忽锁存器中的高8位
XCHG AH,AL
;AX中是输出锁存命令瞬间,计数执行 单元中的计数值
13
8.2.3 8253的工作方式
8253 的工作方式:
在计数期间CPU又送来新的计数初值,不影响当前计数过程。计数器计数到0, OUT端输出高电平。一直等到下一次GATE信号的触发,才会将新的计数初值装入, 并以新的计数初值开始计数过程,如图8-4(c)所示。8253方式1下三种情况的时序 波形图,如图8-4所示。
18
8.2.3 8253的工作方式
8253方式1时序波形图
接口芯片的地址码经译码后接通芯片的片选端,对读操作而言,怎样使 输入端口的信息由数据总线进入CPU,数据何时读入CPU,这些都由读信号 控制。对于输出接口,当CPU对接口进行输出数据的操作时,发出写信号。 在PC系统中,对I/O接口的操作由IN、OUT指令完成。
3
8.1可编程接口芯片概述
3. 可编程 目前所用的接口芯片大部分是多通道、多功能的。所谓多通道就是指一
0:二进制计数 1:十进制计数
其中:D7 D6用于选择定时器;D5 D4用于确定时间常数的读/写格式;D3 D2用来 设定计数器的工作方式;D0用来设定计数方式。
11
8.2 可编程定时/计数器接口芯片8253
例题8.1 8253控制字写入示例
MOV DX,CS+3
;8253控制寄存器端口地址,设置8253内部寄存
输入
《微机原理与接口技术》课程总结
《微机原理与接口技术》课程总结本学期我们学习了《微型计算机原理与接口技术》,总的来说,我掌握的知识点可以说是少之又少,我感觉这门课的内容对我来说是比较难理解的。
这门课围绕微型计算机原理和应用主题,以Intel8086CPU为主线,系统介绍了微型计算机的基本知识、基本组成、体系结构、工作模式,介绍了8086CPU的指令系统、汇编语言及程序设计方法和技巧,存储器的组成和I/O接口扩展方法,微机的中断结构、工作过程,并系统介绍了微机中的常用接口原理和应用技术,包括七大接口芯片:并行接口8255A、串行接口8251A、计数器/定时器8253、中断控制器8259A、A/D(ADC0809)、D/A (DAC0832)、DMA(8237)、人机接口(键盘与显示器接口)的结构原理与应用。
在此基础上,对现代微机系统中涉及的总线技术、高速缓存技术、数据传输方法、高性能计算机的体系结构和主要技术作了简要介绍。
第一章:微型计算机概论(1)超、大、中、小型计算机阶段(1946年-1980年)采用计算机来代替人的脑力劳动,提高了工作效率,能够解决较复杂的数学计算和数据处理(2)微型计算机阶段(1981年-1990年)微型计算机大量普及,几乎应用于所有领域,对世界科技和经济的发展起到了重要的推动作用。
(3)计算机网络阶段(1991年至今)。
计算机的数值表示方法:二进制,八进制,十进制,十六进制。
要会各个进制之间的数制转换。
计算机网络为人类实现资源共享提供了有力的帮助,从而促进了信息化社会的到来,实现了遍及全球的信息资源共享。
第二章:80X86微处理器结构本章讲述了80X86微处理器的内部结构及他们的引脚信号和工作方式,重点讲述了8086微处理器的相关知识,从而为8086微处理器同存储器以及I/O设备的接口设计做了准备。
本章内容是本课程的重点部分。
第三章:80X86指令系统和汇编语言本章讲述了80X86微处理器指令的多种寻址方式,讲述了80X86指令系统中各指令的书写方式、指令含义及编程应用;讲述了汇编语言伪指令的书写格式和含义、汇编语言中语句的书写格式。
(精)第8章 可编程DMA控制器8237A
和当前字计数器,以及一个6位的工作方式寄存器。片内还
各有一个可编程的命令寄存器、屏蔽寄存器、请求寄存器、
状态寄存器和暂存寄存器,以及不可编程的字数暂存器和地
址暂存器等。
2. 8237A的引脚 8237A是一种具备40个
引脚的双列直插式DIP封 装的芯片,如图8-2所示。
8.3 8237A的工作方式 8237A在系统中可以有两种功能:一种功能是系统总线的主 控者,这是它工作的主方式。在取代CPU控制DMA传送时,它 应 提供存储器的地址和必要的读写控制信号,数据是在I/O设备 与存储器之间通过数据总线直接传递;另一种功能是在成为主控 者之前,必须由CPU对它编程以确定通道的选择、数据传送的模 式、存储器区域首地址、传送总字节数等等。在DMA传送之后 ,也有可能由CPU读取DMA控制器的状态。这时8237A如同一般 I/O端口设备一样,是系统总线的从设备,这是8237A工作的从方 式。
8.5 8237A的编程及应用
1. 8237A编程的一般步骤 在进行DMA传输之前,CPU要对8237A进行初始化编程, 设 定工作模式及参数等。通常,其编程内容主要包括以下几 步: 1 输出总清除命令,使8237A处于复位状态,做好接收 新命令的准备; 2 根据所选通道,写入相应通道的基地址寄存器和当前 地址寄存器的初始值; 3 写入基字节计数寄存器和当前字节计数寄存器的初始 值; 4 写入方式控制寄存器,以确定8237A的工作方式和传 送类型; 5 写入屏蔽寄存器; 6 写入命令寄存器,以控制8237A的工作; 7 写入请求寄存器。
DMA EQU 00H OUT DMA+0DH,AL MOV AX,6000H OUT DMA+00H,AL MOV AL,AH OUT DMA+00H,AL MOV AX,0400H DEC AX OUT DMA+01H,AL MOV AL,AH OUT DMA+01H,AL
第8章(1)微机原理与接口技术
第八章 可编程接口芯片及应用—8253的结构与功能 8253的内部结构
计数通道 数据总线缓冲器 读写控制逻辑 控制字寄存器
第八章 可编程接口芯片及应用—8253的结构与功能 8253的内部结构
计数通道 数据总线缓冲器 读写控制逻辑 控制字寄存器
第八章 可编程接口芯片及应用—8253的结构与功能
• 计数器在CLK的下降沿 使计数值减1
第八章 可编程接口芯片及应用--8253的工作方式 方式0 —计数结束产生中断方式
CW N=5 WR
CLK GATE
OUT
54321 0
第八章 可编程接口芯片及应用--8253的工作方式
方式1 —可编程单次脉冲
CW N=2 WR
GATE上升沿触发计数
CLK GATE
OUT
210
21
单脉冲宽度T=n TCLK 图8.7 方式1的波形
第八章 可编程接口芯片及应用--8253的工作方式
方式2 —分频工作方式
CW N=3 WR
CLK GATE
OUT
3213213 TOUT=N*TCLK
图8.8 方式2的波形
第八章 可编程接口芯片及应用--8253的工作方式
方式3 —方波发生器
第八章 可编程接口芯片及应用--8253的工作方式
8255的工作方式
• 计数结束产生中断方式 • 可编程单次脉冲 • 分频工作方式 • 方波发生器 • 软件触发选通 • 硬件触发选通
• 计数初值写入初值寄存 器后,在门控有效的前提 下,要经过一个CLK输入 后才开始计数。(或,经 过一个CLK后,计数初值 才到达计数执行部件)
第八章 可编程接口芯片及应用—8253的结构与功能
8253内部计数器的结构
8253工作原理
7.3 可编程串行接口芯片8251A
7.3.1 8251A的基本性能 8251A是可编程的串行通信接口芯片,基本性能如下: (1)两种工作方式。同步方式和异步方式。同步方式下, 波特率为0~64K;异步方式下,波特率为0~19.2K。 (2)同步方式下的格式。每个字符可以用5、6、7或8位来 表示,并且内部能自动检测同步字符,从而实现同步。除此 之外,8251A也允许同步方式下增加奇/偶校验位进行校验。 (3)异步方式下的格式。每个字符也可以用5、6、7或8位 来表示,时钟频率为传输波特率的1、16或64倍,用1位作为 奇/偶校验,1个启动位,并能根据编程为每个数据增加1个 、1.5个或2个停止位。可以检查假启动位,自动检测和处理 终止字符。 (4)全双工的工作方式。其内部提供具有双缓冲器的发送 器和接收器。 (5)提供出错检测。具有奇偶、溢出和帧错误三种校验电 路。
(5)方式3:方波速率发生器。
特点:与方式2类似,只是进行减2操作,直到0时, OUT变低 ,并自动重新写入计数值减2操作,直到0时, OUT变高。一 般作为方波发生器使用。
(6)方式4:软件触发的选通信号发生器。
特点:写入控制字寄存器后,输出OUT就变高;GATE为高计数,为低停止计 数;不自动重新计数,需要重新将计数值写入计数器后开始计数;计数到0时 ,OUT变为低,经过一个CLK周期 后变为高。不自动重新计数,只有重新软 件写入计数值,同时GATE为高时开始计数。
《单片机微型计算机原理与接口技术》第八章 80C51单片微机的系统扩展原理与接口技术
②开始数据传送 在串行时钟线(SCL)保持高电平的情况下,串行数据线(SDA )上发生一个由高电平到低电平的变化作为起始信号(START) ,启动I2C 总线。I2C总线所有命令必须在起始信号以后进行。 ③停止数据传送 在串行时钟线(SCL)保持高电平的情况下,串行数据线 (SDA)上发生一个由低电平到高电平的变化,称为停止信号( STOP)。这时将停止I2C 总线上的数据传送。 ④数据有效性 在开始信号以后,串行时钟线(SCL)保持高电平的周期 期间,当串行数据线(SDA)稳定时.串行数据线的状态表示数 据线是有效的。需要一个时钟脉冲。 每次数据传送在起始信号(START)下启动,在停止信号 (STOP)下结束。 在I2C总线上数据传送方式有两种,主发送到从接收和从发 送到主接收。它们由起始信号(START)后的第一个字节的最低 位(即方向位R/W)决定。
①串行数据线(MISO、MOSI) 主机输入/从机输出数据线(MISO)和主机输出/ 从机输入数据线(MOSI),用于串行数据的发送和接收。 数据发送时.先传送MSB(高位),后传送LSB(低位)。 在SPI设置为主机方式时,MISO线是从机数据输入线 ,MOSI是主机数据输出线;在SPI设置为从机方式时, MISO线是从机数据输出线,MOSI是从机数据输入线。
8.1.1外部并行扩展原理
单片微机是通过芯片的引脚进行系统扩展的。 80C51系列带总线的单片微机芯片引脚可以构成图8-1所 示的三总线结构.即地址总线(AB)数据总线(DB)和控制总 线(CB)。具有总线的外部芯片都通过这三组总线进行扩展。 (1)地址总线(AB) 地址总线由单片微机P0口提供 低8位地址A0~A7,P2口提 供高8位地址A8~A15。P0口是地址总线低8位和8位数据总线复 用口,只能分时用作地址线。故P0口输出的低8位地址A0~A7必 须用锁存器锁存。 锁存器的锁存控制信号为单片微机ALE引脚输出的控制信 号。在ALE的下降沿将P0口输出的地址A0~A7锁存。P0、P2口 在系统扩展中用做地址线后便不能作为一般I/O口使用。 由于地址总线宽度为16位,故可寻址范围为64 KB。 (2)数据总线(DB) 数据总线由P0口提供,用D0~D7表示。P0口为三态双向
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
8253与8088总线的接口电路如下图所示。
D0
CLK0
D7~D0
…
GATE 0
OUT0 CLK1
D7 RD WR A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A15 IO/M & … ≥1 & A B C Y0 RD 8253 WR
GATE 1
OUT1 CLK2 GATE 2 OUT2
8.1.3 8253的工作方式及时序图
8253定时器/计数器的每个计数器都有 六种可编程选择的工作方式。对于每一种工 作方式,由时钟输入信号CLK确定计数器递减 的速率。门控信号GATE用于允许或禁止CLK信 号进入计数器,或者根据工作方式用作计数 器的启动信号。计数结束时,在输出线OUT上 产生一个标志信号,该信号可编程定义为脉 冲、恒定电位或周期信号。
3. 计数器的内部结构
计数器 0 控制寄存器
CRH
CRL
计数初值寄存器(CR)
减1计数器(CE)
CEH
CEL
OLH
OLL
输出锁存寄存器(OL)
4. 8253的工作过程 (1) 由CPU向控制寄存器写入控制字,以 确定工作方式; (2) 由CPU向计数器寄存器写入计数初值 或定时常数; (3) 计数单元从计数器寄存器中获得初 值,在CLK端输入的计数脉冲控制下进行减1 计数(CLK决定计数速率);
② 8254每个计数器内部都有一个状态寄存 器和状态锁存器,而8253没有。 ③ 8254有一个读回命令字,用于读出当前 减1计数器CE的内容和状态寄存器的内容,而
8253没有此读回命令字。
8.1.5 8253应用举例
例 8.2 使 用 8253 计 数 器 2 产 生 频 率 为 40 kHz的方波,设8253的端口地址为0040H0043H, 已知时钟端CLK2输入信号的频率为2 MHz。试设 计8253与8088总线的接口电路,并编写产生方 波的程序。
21
20 19 18 17 16 15 14
OUT2
GATE 2 CLK1 GATE 1 OUT1
13
图8.1 8253引脚及功能结构
2. 8253内部结构
(1) 数据总线缓冲器 是8253用于和CPU数据总线连接的8位、双 向、三态缓冲器,CPU读写8253的所有数据都经 过该缓冲器。
◎ CPU用输出指令向8253写入方式控制字 至控制寄存器、写入计数值至某个计数器,都 是经数据总线缓冲器和8253内部总线传送的。
当采用“飞读”的方法读取1#计数器的计数值时, 可采用如下程序片段: MOV AL,01000100B ;对1#计数器送锁存控制字。 OUT 43H,AL IN AL,41H ;读低8位。 MOV CL,AL ;读取的计数值存于CL中。 当计数值为16位时,则“飞读”时还应读取高8位锁 存器中的计数值。即: IN AL,41H ;读低8位。 MOV CL,AL IN AL,41H ;读高8位。 MOV CH,AL
OUT 3 2 2 2 1 0
2.方式1——可编程单次脉冲
CW WR N=2
CLK
GATE
2 1 0 2 1
OUT
图8.7 方式1的波形
3.方式2——分频工作方式
CW N=3
WR
CLK GATE 3
OUT
2
1
3
2
1
3
TOUT=N*TCLK
图8.8 方式2的波形
4.方式3——方波发生器
WR CW N=4
◎ 决定内部总线上数据的传送方向(输入 还是输出—由WR、RD决定)
8253端口地址及内部操作
(3) 控制寄存器 ◎ 8253初始化时接收CPU写入的控制字 ◎ 控制字指定计数器的工作方式,选择以 二进制或二—十进制计数等 ◎ 该寄存器为只写寄存器
(4) 计数器0、计数器1、计数器2
◎ 三个计数器结构完全相同、操作完全 独立 ◎ 每个计数器内部包含:一个16位计数 初值寄存器(CR)、计数执行部件(CE)、一 个16位输出锁存器 (OL)和一个控制寄存器 ◎ 每个计数器外部有两个输入端(CLK、 GATE)和一个输出端(OUT)
8.1.2 8253的编程 8253在工作之前,用户首先要为某一计数 器(计数器02)写入控制字以确定其工作方式;
写入定时/计数初值;在定时/计数工作过程中,
有时还需要读取某计数器当前的计数值。
1. 8253的控制字格式
8253的控制字格式如下图所示。
D7 SC1
D6 SC0
D7
D5 RL1
D6 D5
0 SC1 0 SC0 1 RL1 1 RL0 0 M2 1 M1 1 M0 1 BCD
1 0 1 0 1#0 计数器的控制字为:54H
1
0
0
对0#计数器初始化编程 MOV AL,37H ;对0#计数器送控制字。 OUT 43H,AL MOV AL,54H ;送初值的低8位。 OUT 40H,AL MOV AL,23H ;送初值的高8位。 OUT 40H,AL 对1#计数器初始化编程。 MOV AL,01010100B ;对1#计数器送控制字。 OUT 43H,AL MOV AL,18H ;计数初值送低8位。 OUT 41H,AL
根据上述要求2#计数器应设置成方式3工作 状态,按双字节传送的50分频计数值应为0032H。 此时,2#计数器的初始化程序如下:
MOV OUT MOV OUT XOR OUT AL,11110110B 43H,AL AL,32H 42H,AL AL,AL 42H,AL ;对2#计数器送控制字。 ;送低8位计数值32H。
◎ CPU用输入指令读某个计数器值时,该 计数器的现行计数值经8253内部总线和数据总 线缓冲器传送到系统数据总线上,读入CPU。
(2) 读/写逻辑
是8253内部操作的控制部件
◎ 接收系统总线输入信号,转换成8253内 部操作的各种控制信号 ◎ 选择读写操作的对象(某计数器或控制 寄存器-由A0、A1决定)
8.1.1 8253的结构及功能D0 CLK0 OUT0 GATE 0 GND 1 2 3 4 5 6 7 8 9 10 11 12 8253 24 23 22 VCC WR RD CS A1 A0 CLK2 RD 1# A0 A1 CLK2 CS 2# GATE 2 OUT2 WR 8253 CLK1 GATE 1 OUT1 D7~D0 0# CLK0 GATE 0 OUT0
A0 A1
CS
2MHz 20kHz
74LS138
G1 G 2B G 2A
1.工作方式控制字
D7 D6 D5 D4 D3 D2 D1 D0
SC1
1
SC0
1
RL1
1
RL0
1
M2
0
M1
1
M0
1
BCD
0
2. 计数初值 计数初值=输入频率/输出频率 =2000000Hz /40000Hz =50 =0032H
000 —方式0 001 —方式1 ×10 —方式2 ×11 —方式3 100 —方式4 101 —方式5
10 —对计数器的高8位读或写 11 —计数器16位操作(先低8 位,后高8位读或写)
2. 8253的读/写操作
对8253的读/写操作不仅要用到RD和WR控制 信号,还要根据计数/定时工作的要求利用门控 信号GATE和锁存功能来控制8253的读/写操作。 ⑴ 读操作。所谓读操作是指读出计数器的 计数值至CPU中。有两种读数方法: ① 直接读出(停读)。直接用输入指令读取 所选择的端口计数器值。 ② 锁存读出(飞读)。锁存计数值以供读取, 是专为在计数过程中读数据而设计的。
(4) 减到0时,该状态由OUT输出或由状 态寄存器的某一位表示,以作为中断请求信 号或供查询方式使用,也可将OUT 连到一个 I/O设备上,去启动一个I/O操作;
(5) 任何时候都可以将计数单元的当前 值送到输出锁存器被CPU读取而不干扰计数器 继续计数; (6) 门脉冲GATE是由设备送来的,作为 对时钟脉冲的控制信号,门脉冲对时钟的控 制方法有多种,以形成多种工作方式。
D4 RL0
D3 M2
D4 D3 D2
D2 M1
D1
D1 M0
D0 数制
D0 BCD
计数器选择
读写格式
工作方式
00 —选择计数器0 01 —选择计数器1 10 —选择计数器2 11 —非法 00 —将减1计数器CE中的数据 锁存到OL中(锁存功能) 01 —对计数器的低8位读或写
0 —二进制计数
1— 十进制计数
;送高8位计数值00H。
第8章 可编程接口芯片及应用
主要内容:
可编程定时器/计数器芯片8253/
8254 可编程并行接口芯片8255A 串行通信及可编程串行接口芯片 8251A 模/数与数/模转换技术及接口
8.1 可编程定时器/计数器芯片8253/8254
定时信号的产生 1.软件定时 方法:根据所需时间常数设计一个延迟 子程序。 优点:节省硬件 缺点:执行延时程序期间CPU一直被占用, 降低了CPU效率,不易提供多作业环境。 适用:延时时间较短、重复次数有限的 情况。
CLK GATE 4 3 2 1 4 3 2
OUT
TOUT=N*TCLK
图8.9 方式3的波形
5.方式4——软件触发选通
WR CW N=4
CLK GATE
OUT
4
3
2
1
0
6.方式5——硬件触发选通
CW WR N=4
CLK GATE OUT 4 3 2 1 0
8.1.4 8254与8253的区别 8254是8253的改进型,它们的引脚定义与 排列、硬件组成等基本上是相同的。因此8254 的编程方式与8253是兼容的,凡是使用8253的 地方均可用8254代替。 ① 允许最高计数脉冲(CLK)的频率不同。 8253的最高频率为2 MHz,而8254允许的最高计 数脉冲频率可达10 MHz(8254为8 MHz,8254−2 为10 MHz)。