常用数字接口电路 ppt课件.ppt
1,微机原理及接口技术,主讲人 蔡文霞,2,第1章 概述,石家庄学院,1,2,并行通信与串行通信,3,第七章 常用数字接口电路,并行接口芯片5255A,8253定时/计数器,3,并行通信,并行传输以计算机的字长为传输单位(通常是8位、16位或32位),一次传送1个字长的数据并行传输微机系统中最基本的信息交换方法例如:系统板上各部件之间,接口电路板上各部件之间适合于外部设备与微机之间进行近距离、大量和快速的信息交换例如:微机与并行接口打印机、磁盘驱动器,4,串行通信,串行通信:用一根信号线将数据逐位顺序传送串行通信的优势:通信线路少,在远距离通信时可以极大地降低成本;适合于远距离数据传送,也常用于速度要求不高的近距离数据传送PC系列机上有两个串行异步通信接口,键盘/鼠标器/显示器与主机间亦采用串行数据传送。,5,7.2 8253 定时/计数器,定时器和计数器,定时控制在微机系统中极为重要定时器由数字电路中的计数电路构成,通过记录高精度晶振脉冲信号的个数,输出准确的时间间隔计数电路如果记录外设提供的具有一定随机性的脉冲信号时,它主要反映脉冲的个数(进而获知外设的某种状态),常又称为计数器,6,7.2 8253 定时/计数器,7.2.1 8253的功能与引脚,7.2.2 8253的控制字与工作方式,7.2.3 8253的初始化编程,7,7.2.1 8253的功能与引脚,一、8253的基本功能 1、计数-对外部输入脉冲进行计数 2、定时-若输入脉冲是连续而均匀的,则利用脉冲个数脉冲周期可以计算出时间。,8,7.2.1 8253的功能与引脚,1、数据总线缓冲器 8253与系统数据总线相连的接口电路。,通过数据总线缓冲器,CPU用指令对8253进行读/写。,二、8253的内部结构,9,7.2.1 8253的功能与引脚,2. 读/写逻辑电路接收来自CPU的控制信号:,读信号RD* 写信号WR* 片选信号CS* 芯片内部寄存器寻址信号A1A0,二、8253的内部结构,10,7.2.1 8253的功能与引脚,3. 控制寄存器,8253是可编程接口芯片,可以通过软件编程写入控制字的方法,控制其工作方式。,二、8253的内部结构,控制寄存器就是用来存放控制字的,11,7.2.1 8253的功能与引脚,4计数器02 8253有3个结构完全相同的定时器/计数器通道: 0,1,2,计数器结构示意图,每个通道包含: 16位的初值寄存器、减1计数器和结果输出锁存器。,CLK:计数/定时脉冲输入端,每输入一个脉冲,减1操作OUT:计数值减到零时,由输出端OUT输出结束信号GATE:门控信号,允许或停止计数,每个通道有3根专用的信号线:,二、8253的内部结构,12,计数器结构示意图,初值寄存器存放计数初值;在计数过程中,减1计数器值不断递减,而初置寄存器中的预置值不变。输出锁存器写入锁存命令时,锁定当前计数值,13,7.2.1 8253的功能与引脚,三、8253的引脚,1、与CPU的接口引脚,CLK,GATE,OUT,D0D7,WR,RD,A1,A0,CS,DB,IOW,IOR,A1,A0,译码器,高位地址,外设,8253,14,7.2.2 8253的控制字与工作方式,1、8253的控制字,15,7.2.2 8253的控制字与工作方式,计数启动方式,软件启动硬件启动,GATE端为高电平,CPU用输出指令向计数器写入初值后就启动计数,GATE端有一个上升沿,由GATE端信号的形式决定,2、8253的工作方式,16,7.2.2 8253的控制字与工作方式,(1)方式0计数结束产生中断(2)方式1可编程单稳态 (3)方式2分频器 (4)方式3方波发生器 (5)方式4软件触发选通脉冲 (6)方式5硬件触发选通脉冲,17,方式0计数结束产生中断,此种方式计数器在减到0时使输出端OUT变为高电平,可作为中断申请信号(1) 写入控制字后,OUT 变为低电平。(2) 写入计数初值后,下一个脉冲下降沿开始计数。(3)计数值到0时计数结束,OUT变为高电平,一直保持到重新装入初值或复位时为止。 (4)GATE=1允许对CLK计数,GATE=0计数停止。,18,方式1可编程单稳态,输出一个宽度可控的负脉冲1、写入控制字后,OUT 变为高电平。 2、写入计数初值后,不开始计数。3、GATE上升沿后,在CLK下降沿开始对CLK计数,OUT变为低。 4、计数值到0时计数结束,OUT变为高电平。5、写入一个新的计数值,不影响原计数过程。当GATE出现新的上升沿后,才使用新的计数值重新计数。,19,7.2.3 8253的初始化编程,8253使用前,必须首先对其初始化,初始化包括写入控制字和各计数的初值,顺序为:,写入控制字,写入计数值低字节,写入计数值高字节,20,例:某系统中8253的端口地址为2F80H2F83H,要求通道1工作在方式3,经BCD方式计数,计数初值为1000H,试写出初始化程序。,分析:则控制字格式为:MOVAL,77H MOVDX,2F83H OUTDX,AL MOVDX,2F81H MOVAL,0 OUTDX,AL MOVAL,10H OUTDX,AL,;控制字送AL;设置控制字的端口地址;写入控制字;设置通道1的端口地址;送初值的低字节;送初值的高字节,01110111B=77H,21,例7-2 某系统中8253的端口地址为40H-43H,要利用其通道2对CLK2 上的外部输入脉冲进行计数,计满100个后向CPU发中断请求,试写出相应初始化程序。,分析: 本例中采用二进制计数,则初值100 为64H ,写入时只写低8位即可。 由于要向CPU发中断申请,故设置通道2工作在方式0,这样计数结束时的正跳变信号可作为中断请求信号。控制字的格式应为: MOVAL,90H OUT43H,AL MOVAL,64H OUT42H,AL,10010000B=90H,