收藏 分销(赏)

第6部分基本输入输出接口技术.ppt

上传人:天**** 文档编号:14639136 上传时间:2026-10-24 格式:PPT 页数:115 大小:1.77MB 下载积分:10 金币
下载 相关
第6部分基本输入输出接口技术.ppt_第1页
第1页 / 共115页
第6部分基本输入输出接口技术.ppt_第2页
第2页 / 共115页


点击查看更多>>
资源描述
单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,单击此处编辑母版标题样式,*,返回,第6章 基本输入输出接口技术,【,本章提要,】,本章首先概述,I/O,的基本知识,然后讨论输入,/,输出控制方式,,I/O,接口的读写技术,并行通信与串行通信,最后重点讨论常用可编程典型,I/O,接口芯片及其接口技术。,【,学习目标,】,了解,I/O,接口信息、,I/O,编址方法、,I/O,组织、,I/O,控制方式、并行通信及串行通信等输入输出基础知识。,理解基本输入输出接口的操作。,掌握简单,I/O,接口的读写技术。,熟练掌握常用接口芯片,16550/8250,、,8255,和,8253,的工作原理及其编程应用。,能综合运用接口芯片,构建和分析实际应用系统。,2026/10/24,第6章 基本输入输出接口技术,1,2,3,6,7,5,本章主要内容:,概 述,输入/输出控制方式,I/O,接口读写技术,并行通信与串行通信,可编程接口芯片,串行通信接口芯片,并行通信接口芯片,定时计数接口芯片,4,2026/10/24,6.1 概述,一、输入/输出与输入/输出接口,1.,输入/输出:,微处理器与外部设备之间的信息交换即通信。,2.,输入/输出接口:,完成微处理器与外部设备数据通信即输入/输出任务的接口。,包括,:,硬件接口电路和软件接口程序。,2026/10/24,二、,I/O,接口的功能,1.内部地址译码,2.提供联络信号,3.信号特性匹配(如电平转换),4.信息格式的转换(如正负逻辑的转换,串并 格式,模数转换),5.数据缓冲与锁存,6.对外设进行中断管理,7.提供时序控制,2026/10/24,三、,CPU,与,I/O,设备间的接口信息,三种:数据信息、状态信息、控制信息,这些信息均通过数据总线传输。,2026/10/24,五、,I/O,组织,2.,基于8086和80286,16,位,I/O,组织,3.,基于80386和80486,32位,I/O,组织,4.,基于,PentiumPentium4,的,64,位,I/O,组织,I/O,组,织,1.基于,8088,的,8,位,I/O,组织,2026/10/24,8位I/O组织-基于8088,2026/10/24,16,位,I/O,组织,-,基于,808680286,2026/10/24,32,位,I/O,组织,-,基于,8038680486,2026/10/24,64,位,I/O,组织,-,基于,Pentium Core2,2026/10/24,2.I/O,端口的地址分配,1.,I/O,地址范围,0000,H-FFFFH.,共64,K,个8位端口,从8086,Core2 I/O,地址采用,A15,A0,共16条地址线,且与存储器分开编址。,2.系统板保留的1,K,个,I/O,端口,(详见书,P.238,表6.1),000,H-03FFH,,共1,K,个8位端口,3.,查看当前系统,I/O,地址分配,2026/10/24,系统板保留的1,K,地址,2026/10/24,I/O,指令时序,(b)OUT,指令操作时序,OUT P8,AL,或,OUT DX,,,AL,P,8,为,8,位端口地址,(a)IN,指令操作时序,IN AL,P8,或,IN AL,DX,P8,为,8,位端口地址,2026/10/24,6.2 输入输出控制方式,直接程序控制方式,中断控制方式,DMA,控制方式,I/O,处理机控制方式,2026/10/24,一、直接程序控制方式,含义:,直接在程序控制下进行微处理器与外设之间的数据传送。,分类:,无条件传送方式和条件传送方式两种。,1.无条件传送方式,含义,:,不查询外设状态而直接进行输入输出的一种方式。,特点:,简单、经济,但可靠性差。,2026/10/24,2.条件传送方式,含义:,首先查询外设状态,满足条件时才进行数据的传送,因此也叫查询传送方式。,特点:,简单、可靠性高,但,CPU,效率低。,输入,输出,2026/10/24,二、中断控制方式,含义:,在满足传输条件时,外设向,CPU,发请求传输的中断信号,,CPU,接收请求后进入服务程序,在中断服务程序中进行输入输出操作。,特点:,无需查询等待,,CPU,利用率大大提高。,不足:,中断控制方式仍需要一系列本与输入输出无关的操作(如压栈保护等),因此对于高速,I/O,设备效率仍不算快。,2026/10/24,三、,DMA,控制方式,含义,:直接由,DMA,控制器硬件控制数据传输,传输过程无需,CPU,干预。,特点:,速度快(因为有,DMA,硬件直接控制),效率高。,2026/10/24,外设/内存,DMA,方式与其它方式比较,CPU,DMA,控制器,内存/外设,外设/内存,MOV,XX,AL,OUT DX,AL,IN AL,DX,MOV,AL,XX,无需,CPU,指令,内存/外设,2026/10/24,四、,I/O,处理机控制方式,尽管,DMA,方式优点比较突出,但在,DMA,进行传输之前,对,DMA,的初始操作、对数据的运算和处理等都需要处理器事先干预。为了让处理器彻底摆脱管理和控制,I/O,设备的负担,引入了,I/O,处理机控制方式。这种方式下,由专用,I/O,协处理器负责,I/O,操作和处理。,2026/10/24,6.,3 I/O,接口的读写技术,一、简单输入输出接口,输入采用缓冲器,输出采用锁存器。,1.,常用缓冲器:,2026/10/24,简单,I/O,接口,-,锁存器,2.,常用锁存器,2026/10/24,二、简单,I/O,接口的读控制,读操作程序,:,MOV DX,377H,IN AL,DX,2026/10/24,2.,简单,I/O,接口的写控制,写操作程序,:,MOV DX,0DFFFH,OUT DX,AL,2026/10/24,3.16,位,I/O,接口的读操作,读操作程序,:,MOV DX,2F6H,IN AX,DX,2026/10/24,32,位,I/O,接口的写操作,写操作程序,:,MOV DX,3ECH;,选中,3ECH3EFH4,个端口,OUT DX,EAX,2026/10/24,常用接口芯片及应用,6.4,并行通信与串行通信,6.5,可编程串行通信接口芯片,6.6,可编程并行通信接口芯片,6.7,可编程定时/计数器芯片,1,2,3,4,2026/10/24,6.4,并行通信与串行通信,并行通信与并行接口,串行通信与串行接口,串行通信方式及异步通信协议,串行异步通信标准接口,2026/10/24,一、并行通信与并行接口,1.并行通信,含义,:并行通信是指将一个字节或一个字的各 位同时进行传输的一种通信方式。,要点,:传输的各位同时传输(输入或输出)。,特点,:,(1)传输速度快,(2)传输的信息率高,(3)比串行通信需要更多通信信号线,用途,:常用于传输距离短,数据传输速度要求 高的场合。,2026/10/24,含义,:实现并行通信的接口称为并行通信接口。,2.并行接口,2026/10/24,二、串行通信与串行接口,1.串行通信,含义,:串行通信是把传输的数据一位一位地顺序传送的一种通信方式。,要点,:按位传输,同一时刻仅传送一位。,特点,:,(1)通信线少,(2)成本低,(3)但通信速度慢,用途:适用于长距离数据传输。,2026/10/24,完成串行通信任务的接口称为串行通信接口,简称串行接口。,功能,:(1)输入时,完成串行到并行格式转换(2)输出时,完成并行到串行格式转换。,2.串行接口,2026/10/24,串行通信数据传输方式,有单工方式、半双工方式、全双工方式,2026/10/24,三、串行通信方式,及异步通信协议,串行通信方式,两种:串行异步通信和串行同步通信。,1.异步通信,异步通信:指字符与字符之间的传送是完全异步的,随机,的,但一个字符的位与位之间是同步的。,2.异步通信特点,字符的发送是随机的。,每一个字符传输总以一个起始位为准,然后接收方与发送方保持同步(格式的统一),最后是停止位,通信双方可随时改变通信协议,即改变数据位、奇偶校验位和停止位长度或数据传输率。,2026/10/24,3异步通信协议,异步通信协议,包括:一是字符的传送格式的规定,二是数据传送速率的要求。,异步通信格式,协议,即改变数据位、奇偶校验位和停止位长度或数据传输率。,2026/10/24,波特率,波特率(,Baud Rate):,指单位时间传送二进制数的位数,一般以秒为单位。,微机中常见的波特率,有110,300,600,1200,2400,4800,9600,19200等。微机最高波特率由硬件决定。,例,:已知字符格式中数据为8位,无校验,1位停止位,在1分钟内连续不断传送了,69120,个字符,求波特率。,解,:一个字符=1+8+0+1=10位,每秒传送的字符个数=69120/60=1152个,波特率=位/秒=1152*10=11520,bits/S=11.52Kbits/s,2026/10/24,4.同步通信,同步通信,将多个字符连接成一个数据块,数据块前加1或2个同步字符,尾部是校验字符,最后为同步字符。,同步的含义,字符与字符之间时间间隔固定不变,是同步的。,2026/10/24,四、串行异步通信标准接口,串行异步通信的标准接口有,RS-232C、RS-449、RS-422、RS-485,以及20,mA,电流环等接口。,一、,RS-232C,接口(,PC,使用),1.,接口逻辑:负逻辑传送1:-15,V-5V0:+5V+15V,允许噪声容限为2,V,因此,实际,RS-232,能够区分的逻辑电平:,1:-15,V-3V,0:+3V+15V,只有在-3,V+3V,时逻辑为不确定,2026/10/24,2.,RS-232,接口信号及含义,2026/10/24,二、,RS-232,逻辑电平的转换,为什么要进行逻辑电压的转换?,因为,RS-232,逻辑电平与,UATRT,电平不一致,常用单电源供电的,232,电平转换芯片,MAX232、TLC232、UN232,、,SP232,等为不同厂家的典型单电源供电的232接口芯片,完成电平转换功能。根据,UART,的电平的不同可分为,5V,和,3.3V,。,2026/10/24,RS232,电平转换原理,计算机通信是,TTL,和,CMOS,逻辑电平,而,RS-232,规定的电平与之不符,故需电平转换。,2026/10/24,RS232,电平转换典型芯片,C1,C5,可为,0.1uF4,7uF,具体值参见芯片说明,TIN,为,TTL,输入,RIN,为,232,输入,TOUT,为由,TTL,转换后的,232,电平输出,ROUT,为由,RS232,转换后的,TTL,电平输出,2026/10/24,RS-232,简单连接示意图,2026/10/24,二、,RS-485,接口标准,RS232C,缺点:受共模干拢影响,通信距离不长。仅20米以内。,RS485,主要特点:,采用差分传输方式,具有很强的抗共模干扰能力。,可同时连接多个接收器和发送器(32256个),通信距离长,可达千米(标准为,1.2Km,)。,RS-485,逻辑电平:,逻辑,1,:,A,的电位比,B,高,200mV,以上,逻辑,0,:,B,的电位比,A,高,200mV,以上,2026/10/24,RS-485,接口的连接,由于是差分传输,因此,RS,485,接口采用同名端相连的方法,即所有,485,芯片的,A,和,A,连在一起,,B,和,B,连在一起。,DI,为数据发送端,,RO,为数据接收端,,RE,收发使能,RE,0,接收,,RE,1,发送,终端(两个远端)各接一个匹配电阻(,120,欧)防止传输反射。,MAX485,MAX485,2026/10/24,6.5,可编程串行通信接口芯片 16550与8250,一、16550及8250功能,(1)具有全双工、双缓冲器发送器和接收器。,(2)是串行异步通信接口(,UART),。,(3)波特率:8250=509600波特;16550=50115200波特。,(4)异步通信格式,可通过编程选择。,(5)具有自动奇偶校验、溢出和帧出错等检测标志。,(6)片内具有优先级中断控制逻辑。,(7)单一+5,V,40,个引脚的,DIP,封装形式。,2026/10/24,二、内部结构及工作原理,2026/10/24,1.接收部分,接收移位寄存器将,SIN,脚的串行数据进行移位输入。,(1)检测起始位:,SIN,变低后,连续测试8个,RCLK,时钟周 期,如果都是低电平,为起始位,否则为干扰信号。,(2)采样数据位:每隔16个,RCLK,脉冲对,SIN,输入的数据位进 行一次采样。直到停止位,完成一个字符的接收。,(3)去除无关位:接收同步控制电路自动去除起始位、奇 偶校验位和停止位。,(4)串到并转换:同步控制电路控制接收移位寄存器将串 行数据转换成并行数据送入接收数据缓冲器(,THR),中。,(5)检查正确性:接收同步控制电路对数据的正确性进行检查。如果在检测字符格式时有错误,则通过线路状态寄存器 设置相应的出错标志。,2026/10/24,2.发送部分,发送部分负责接收,CPU,送来的并行数据,并通过移位的方法将其变换成串行信号,最后通过发送端,SOUT,发送出去。,(1),CPU,的,并行数据存入发送保持寄存器中,由 发送同步控制电路控制将该数据经过发送移 位寄存器处理,按照事先规定的格式加上起 始位、奇偶校验位和停止位,变换成串行数 据帧后由,SOUT,端输出串行数据信号。,(2)当数据进入发送移位寄存器后,发送保持 寄存器自动变空,,CPU,即可再次写入数据。,2026/10/24,3.通信线路控制寄存器,线路控制寄存器(,LCR),接收,CPU,用,OUT,指令写入的控制命令。控制寄存器的内容可以通过,IN,指令读出。线路控制寄存器的格式:,2026/10/24,4.通信线路状态寄存器,线路状态寄存器,LSR,记录串行数据发送和接收的状态,以供,CPU,查询。线路状态寄存器的格式:,2026/10/24,5.,Modem,控制寄存器,Modem,控制寄存器,MCR,用于设置16550/8250与通信设备之间联络应答的输出信号,其格式如所示。,2026/10/24,6.,Modem,状态寄存器,Modem,状态寄存器,MSR,反映8250与通信设备之间应答联络输入信号的当前状态以及这些信号的情况,各位的含义如图所示。,2026/10/24,7.中断允许寄存器,IER,反映了接收器和发送器以及,Modem,是否允许中断的情况,通过设置可以指定其中的某些部件允许中断。它是一个可读可写的寄存器。,2026/10/24,8.中断识别寄存器,IIR,中断识别寄存器,IIR,,可以识别4个中断源引起的中断。接收器线路状态中断、接收数据准备好中断、发送保持寄存器空中断和调制解调器状态中断。,2026/10/24,9.波特率发生器,16550及8250使用1.8432,MHz,的基准输入时钟,分频后产生所需的内部基准脉冲,作为接收器和发送器的同步脉冲,以控制接收移位寄存器和发送移位寄存器的移位操作。,发送或接收串行数据时使用的时钟频率是数据传送波特率的16倍,除数值与波特率的关系:,除数1843200(波特率16),2026/10/24,波特率发生器与除数寄存器,根据波特率与除数的关系,可计算出不同波特率对应的除数值,如表所示。,2026/10/24,三、16550/8250引脚信号,几个最重要的信号,RCLK,接收时钟,SIN,串行输入引脚,SOU,串行数据输出,A2,A1,A0,内部寄存器选择输入信号,其它信号,2026/10/24,其它引脚,1.电源及时钟,VCC,GND,XTLA1,XTLA2,2.,数据线:,D7D0,3.,片选信号:,CS0,CS1,和/,CS2(,输入),4.,选通信号:,地址输入选通:/,ADS,数据输入选通:,DISTR,和/,DISTR(,接/,IOR),数据输出选通:,DOSTR,和/,DOSTR(,接/,IOW),5.,主复位:,MR,6.,接收时钟:=接收波特率的16倍,7.清除发送:/,CTS,8.,数据装置(,MODEM),准备好:/,DSR,9.,接收线路信号检测:/,RLSD(,有效时表示,Modem,检测数据载波,10.振铃指示:/,RI,有效表示,Modem,已经接收到一个电话振铃信号,2026/10/24,其它引脚续,11.数据终端准备好:/,DTR,有效时通知,Modem,接口已准备好,12.,请求发送:/,RTS,有效请求发送数据,13.,用户输出引脚:/,OUT1,和/,OUT2(,由,Modem,控制寄存器决定),14.,片选信号输出:,CSout,片选输入信号,CS0=1,CS1=1/CS2=0,时,Csout=1(,高电平),15.,驱动器禁止:,DDIS,有效时禁止外部总线转换器对系统总线的驱动.,16.波特率输出:/,BAUDout,以16倍波特率的时钟输出,17.中断请求:,INTRPT,当允许中断时,16550/8250内部发生某种中断时,该引脚为高电平有效,向8259,A,发中断请求信号.,2026/10/24,四、串行接口的编程及应用,1.串行接口的端口地址分配,2026/10/24,2.串行接口初始化,串行接口初始化的任务:,(1)设置波特率,(2)确定通信的具体格式,(3)设置操作方式,(4)设定是否使用中断、是否自测试操作等等。,2026/10/24,设置波特率方法,计算除数值,除数1843200(波特率16),写线路控制寄存器,使,DLAB=1,以访问除数寄存器,先将除数低字节写入低字节寄存器端口,再将除数高字节写入高字节寄存器端口,注意:线路控制寄存器地址:3,FBH(COM1),2FBH(COM2),除数低字节寄存器:3,F8H(COM1),2F8H(COM2),除数高字节寄存器:3,F9H(COM1),2F9H(COM2),2026/10/24,1.,设置波特率程序段,假设设置波特率为11520,则初始化程序片段如下,:,MOV,AL,10000000B;DLAB=1,MOVDX,3FBH;,指向线路控制寄存器端口,OUTDX,AL;,写入线路控制寄存器,MOVAL,0AH;,置产生11520波特率的除数低字节,MOVDX,3F8H;,除数低字节寄存器口地址,OUTDX,AL;,写入除数低字节,MOVAL,00;,除数高字节,INCDX;,指向除数高字节寄存器口地址,OUTDX,AL,;,写入除数高字节,2026/10/24,2.,设置通信数据格式方法,根据要求确定格式,将格式字写入线路控制寄存器,并使,DLAB=0,以正常工作,例子:假设一帧数据含有8位数据、1位停止位、奇校验,则有关程序如下:,MOVAL,00001011B;,通信控制寄存器控制字,MOVDX,3FBH;,线路控制寄存器口地址,OUTDX,AL;,写入线路控制寄存器,2026/10/24,3.,自测工作(自发自收),MOVAL,000,1,0011B;,自发自收,MOVDX,3FCH;Modem,控制寄存器地址,OUTDX,AL;,写入线路控制寄存器,2026/10/24,4.,设置中断允许寄存器,仅允许接收中断和发送中断:(,COM1),MOV AL,0000,0011,;,仅允许收、发中断,MOV DX,3F9H,OUT DX,AL ;,写入中断允许寄存器,2026/10/24,三、串行通信实例,两台微机利用,COM1(,串行口1)进行查询通信,只用,三根连接线。,双机通信的要求如下:数据为7位、1位停止位、奇校,验、波特率为1,9200,;双机同时运行该程序,一方键入,的字符在另一方屏幕上显示,当按下小写字母,q,时,,结束通信回到,DOS。,程序见教材,P.261(,COMMEX.ASM,),2026/10/24,6.6,可编程并行接口芯片8255,A,8255的内部结构及引脚信号,8255的工作方式,8255的编程,2026/10/24,一、8255的内部结构及引脚信号,2026/10/24,引脚信号,(1)与外设接口信号引脚,PA7PA0 A,口的8个,I/O,引脚,PB7PB0 B,口的8个,I/O,引脚,PC7PC0 C,口的8个,I/O,引脚。,(2)与系统总线接口信号引脚,D7D0,数据线,/,RD,/WR,/CS,RESET,高电平有效,有效时8255内部寄存器清除,同时三个数据端口被自动设为输入端口。,2026/10/24,8255,A,的端口操作,2026/10/24,二、8255的工作方式,基本输入输出方式-方式0,选通输入输出方式-方式1,双向输入输出方式-方式2,2026/10/24,基本输入输出方式-方式0,方式0没有规定固定的用于应答式的联络信号线。,在此方式下,三个数据端口,A、B,和,C,中的任何一个端口都可由程序设定为8位的输入口或输出口。,C,端口的两个半口(高4位和低4位)可独立设为输入或输出端口。,端口输入具有缓冲功能;输出具有锁存功能。,方式0下的各端口输入或输出有2,4,=16种不同的组合。,2026/10/24,选通输入输出方式-方式1,方式1规定固定的用于应答式的联络信号线。,A,口和,B,口可作为输入或输出端口使用,而此时,C,口的某些位与它们配合,作为控制或通信联络信号,,没有使用的,C,口某些位还可单独立定义为,I/O,口用。,方式1下,A,和,B,端口的输入和输出具有不同的组态。内部逻辑不同。,下面分别介绍,A,口输入、,B,口输出、,A,口输出和,B,口输出不同情况下的内部逻辑。,2026/10/24,方式1下的输入组态,A,口输入,B,口输入,2026/10/24,方式1下的输入工作波形,2026/10/24,方式1下的输出组态,A,口输出,B,口输出,2026/10/24,方式1下的输出工作波形,2026/10/24,双向输入输出方式-方式2,方式2是双向的数据传输方式,仅限于,A,口,这时,C,端口配合其工作。,2026/10/24,三、8255编程,对8255编程首先要写入方式选择控制字,然后再行输入输出操作。,操作时可对端口,C,进行置/复位操作。因此:8255有两个控制字是编程的关键所在。,方式选择控制字,端口,C,置/复位控制字,2026/10/24,方式选择控制字写入控制口,2026/10/24,例,6.3,【,例,6.3】,编写对,8255,的初始化程序片段,要求:使,A,口为方式,0,输入,,B,口为方式,0,输出,,C,口作为,8,位的输出口使用。,8255,控制端口的地址为,12BH,。,解:对照,方式选择控制字格式,可得到控制字为:,10010000B=90H,,初始化程序片段:,MOV AL,90H;,方式选择控制字,MOV DX,12BH;,由于端口号,256,,用,DX,间接寻址,OUT DX,AL,;写入控制寄存器,2026/10/24,例,6.4,【,例,6.4】,如果把,A,口设置为方式,0,输入,,B,口设成方式,1,输出,,C,口除了与,B,口方式,1,输出配合的,PC0,到,PC2,外,其,PC3,设成输入,,C,上半口(,PC7,PC4,)设为输出。则对照控制字格式,得其方式选择控制字为:,10010101B=95H,。,解:假设,8255,的口地址为,60H,63H,,并知道,8255,的,A0,和,A1,分别与,CPU,总线的,A0,和,A1,相连,写出对,8255,的初始化程序片段。,对,8255,的初始化程序只需要两条指令如下:,MOV AL,95H,;方式选择控制字,OUT 63H,AL,;写入控制寄存器,2026/10/24,端口,C,置/复位控制字写入控制口,2026/10/24,例,6.5,【,例,6.5】,使,A,口为方式,1,输入,且采用中断传送,,B,口采用方式,0,输出,其余,C,口的位作为输出。假设控制端口地址为,63H,。则程序段为:,解:,MOV AL,10110000B,;,A,口方式,1,输入,,B,口方式,0,输出,其余,C,口位输出,OUT63H,AL,;方式选择控制字写入控制寄存器,MOVAL,00001001B,;置位,/,复位控制字,使,PC4=1,,即使,INTE=1,允许内部中断,OUT 63H,AL,;置位,/,复位控制字写入控制寄存器,2026/10/24,三、,8255,作为打印机接口实例,2026/10/24,打印机接口的时序要求,2026/10/24,打印程序,MOV,AL,0A8H;,方式选择字,(,C,上半口输入,PC4),MOV DX,343H ;,控制端口,OUT DX,AL;,方式选择控制字写入控制口,MOV CX,Counter;,打印字符个数装入计数器,MOV BX,OFFSET Pstrings;Counter,Pstrings,已定义(,P.255),LP1:MOV AL,BX,MOV DX,340H,OUT DX,AL;,送一个字符到8255的,A,口,MOV DX,342H,LP2:IN,AL,DX;,读取,C,口状态(准备检查,BUSY,状态),ANDAL,00010000B ;,屏蔽无关位,取,BUSY,JZ LP2;,等待接收新数据,LP3:IN AL,DX;,读取,C,口状态,AND AL,00010000B ;,屏蔽无关位,取,BUSY,对应的,PC4,JNZ LP3;BUSY=1,等待,直到不忙,INC BX,LOOP LP1,2026/10/24,6.7,可编程定时/计数器8253(,8254),三种方法,:软件定时、硬件定时、可编程硬件定时,主要内容:,8253/8254的内部结构及引脚信号,8253/8254的工作方式,8253/8254的编程,8253最高工作频率2.6,MHz,8254,最高工作频率为10,MHz,2026/10/24,8253/8254主要功能,1,用于计数,当用于计数时,计数装入初始值后,在,GATE,为高电平的情况下,可以用外部事件作为,CLK,脉冲对计数值进行减,1,计数,每来一个脉冲,计数器减,1,一次,当计数值减到结束时,由,OUT,端输出一个信号。如果计数未结束,而外部没有触发的脉冲信号,则可以通过读取现行计数器的值来求出计数值。,2,用于定时,当用于定时时,计数器装入初值后,在,GATE,为高电平情况下,由,CLK,脉冲触发开始自动计数,当减,1,计数结束时,在,OUT,端发送计数结束信号。定时时间长度就是计数初值与,CLK,时钟周期的积。,由此可见,定时和计数的实际是计数,只是定时是在计数的基础上再乘以时钟周期。,2026/10/24,8253/8254内部结构,2026/10/24,8253端口及其操作,2026/10/24,8253和8254的工作方式,方式0 中断信号发生器,方式1 单稳负脉冲信号发生器,方式2 速率信号发生器,方式3 方波信号发生器,方式4 软件触发的选通信号发生器,方式5 硬件触发的选通信号发生器,2026/10/24,方式0,中断信号发生器,2026/10/24,方式1单稳负脉冲信号发生器,2026/10/24,方式2速率信号发生器,2026/10/24,方式3 方波信号发生器偶数初值,2026/10/24,方式3 奇数初值,2026/10/24,方式4,软件触发的选通信号发生器,2026/10/24,方式5 硬件触发的选通信号发生器,2026/10/24,8253/8254的编程方法,8253/8254控制字,2026/10/24,8253/8254计数范围,二进制计数:,0000,HFFFFH,,即0-65535,BCD,码计数:,00009999,最小和最大计数值:,最大计数为0000,不是,FFFFH,或9999。除方式,2,3,外,最小值都为1。,2026/10/24,8253/8254初始值计算,假设已知8253相应通道的,CLK,端接入的时钟频率为,f,CLK,,,周期记为,T,CLK,=1/f,CLK,,,要求产生的周期性信号频率为,F(,周期为,T),或定时时间为,T(F=1/T),,则所需计数初值,n,为:,在计算时注意时间和频率的单位一致性。,2026/10/24,8253/8254编程示例,已知8254各通道时钟接8,MHz,信号,端口地址为700,H、702H、704H,和706,H,,要求在,OUT0,产生周期为10,us,的,方波,OUT1产生2KH,z,的连续脉冲信号,OUT3产生一个最大的负脉冲。,分析:,OUT0:初值=10,us,8MHz=80 方式3,OUT1:初值=8MHz/2KHz=4000,方式2,OUT2,:,初值=0,二进制计数,方式1,2026/10/24,示例程序片段,;,CTC0,MOV,DX,706H;,控制端口地址,MOV AL,00010110B;CTC0,控制字,OUT DX,AL,MOV,DX,700H;CTC0,口地址,MOV AL,80;CTC0,初值,OUT DX,AL,2026/10/24,;,CTC1,MOV,DX,706H;,控制端口地址,MOV AL,01110100B;CTC1,控制字,OUT DX,AL,MOV,DX,702H;CTC1,口地址,MOV AX,4000;CTC1,初值,OUT DX,AL;,先写低字节,MOV,AL,AH;,取高字节,OUT DX,AL;,后写高字节,2026/10/24,;,CTC2,MOV,DX,706H;,控制端口地址,MOV AL,10110010B;CTC2,控制字,OUT DX,AL,MOV,DX,704H;CTC2,口地址,MOV AL,0;CTC2,初值,OUT DX,AL;,先写低字节,OUT DX,AL;,后写高字节,2026/10/24,8253应用,OUT0,:,55ms,方波,OUT1,:,15us,连续波,OUT2,:,1KHz,方波,8255,的,B,端口地址,61H,2026/10/24,应用程序片段,;,CTC0,初值=55,ms,*1.19MHz=65450,MOV AL,00110110B;CTC0,控制字,OUT 43H,AL;,写入控制端口,MOV AX,65450;CTC0,初值,OUT,40H,AL;,先写低字节,MOV AL,AH,OUT 40H,AL;,后写高字节,2026/10/24,;,应用程序,CTC1,;,初值=15*1.19=17.85 取 18=12,H,MOV AL,01010100B;CTC1,控制字,OUT 43H,AL;,写入控制端口,MOV AL,12H;CTC1,初值,OUT 41H,AL;,写初值至,CTC1,2026/10/24,;,应用程序,CTC2,;,CTC2,初值=1.19,M/1K=1190,MOV AL,10110110B;CTC2,控制字,OUT 43H,AL;,写入控制口,MOV AX,1190;CTC2,初值,OUT 42H,AL;,先写低字节,MOV,AL,AH;,取高字节,OUT 42H,AL;,后写高字节,INAL,61H;,读8255,A,的,B,口的值,MOV AH,AL;,暂存,AH,中,OR AL,00000011B,OUT 61H,AL;,输出使扬声器发声,2026/10/24,本章,习题,作业,:,习题,6.10,6.12,6.13,6.14,习题,6.15,6.16,6.17,6.19,6.20,2026/10/24,
展开阅读全文

开通  VIP、SVIP  下载更划算
下载10份以上建议开通 VIP 会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 通信科技 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        关注我们

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服