收藏 分销(赏)

2022年常用可编程并行接口芯片及应用.ppt

上传人:二*** 文档编号:12597964 上传时间:2025-11-08 格式:PPT 页数:46 大小:526.54KB 下载积分:5 金币
下载 相关 举报
2022年常用可编程并行接口芯片及应用.ppt_第1页
第1页 / 共46页
本文档共46页,全文阅读请下载到手机保存,查看更方便
资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,主要内容,8.1,可编程接口芯片的概念,8.2,计数器,/,定时器,8253,8.3,可编程并行接口,8255A,8.4,可编程,DMA,控制器,8237A,学习要求,1.,掌握,8253,的编程应用,2.,掌握,8255A,的编程应用,第八章 可编程接口芯片及应用,8.1 可编程接口芯片的基本概念,(1)CPU与I/O外设交换信息的方式有两种:,并行通信:数据各位同时向外传送。,优点:传输速率快;,缺点:传输多少位至少要多少根传输线,工程造价高。,串行通信:数据一位一位传送,通信双方沿单根线或双根线,实现二进制序列传输称串行通信。,优点:一根或两根线,线路简单,成本低,适用于远距离传输。,缺点:传输速率慢。,(2)可编程接口芯片,不可编程接口芯片,接口功能单一,用户不可改变。,如74LS244、74LS273,可编程接口芯片,大多是多功能、多通道的。一个通道用户,可定义为输入端口,也可以规定为输出端口。选择的方法是在,芯片正式工作之前,编写一段程序写入该该芯片的控制寄存器,中,用来选择不同的通道和不同的电路功能,使之按照人们所,希望的方式工作,这个过程称为“初始化编程”。,8.1 可编程接口芯片的基本概念,(3)多通道、多功能,多通道:是指一个接口芯片一方面可与CPU相连,另一方面可连接,多个外设。,多功能:是指一个接口芯片能够实现多种接口功能,使接口芯片具,有不同的电路工作状态。,8.2 计数器/定时器8253/8254,定时及计数技术在计算机中具有很重要的作用。比如:定时采样、,定时中断、定时启动电机等,这都需要一类定时及计数电路,因,此微机系统都必须有定时技术。,为获得稳定准确的定时,必须有准确稳定的时间基准(简称时基)。,定时:本质是计数,把时间片加起来就获得一段时间。,定时方式:软件或硬件件。,软件定时:利用CPU执行指令需要若干指令周期的原理,运用软,件编程,然后循环一段程序而产生延时,再配合简单接口可以向,外发送定时控制信号。,优点:不需增加硬件电路只需编制相应的延时子程序即可;,缺点:占用CPU的工作时间,浪费CPU资源。,硬件定时:硬件定时有专用的多谐振荡器件或单稳态触发器。,缺点:改变定时要改变硬件。,可编程通用定时器/计数器芯片:使用灵活,定时时间长,改变定时,时间或工作方式只要改变编程控制参数即可。初始化编程后,就按,设定的方式工作,不再占用CPU的时间。,8.2.1 8253功能概述,主要功能特点:,8253,是可编程的计数定时器,每个,8253,有三个独立的,16,位计,数器通道,有六种工作方式可,供选择。,每个计数器可按二,-,十进制计数。,每来一个脉冲计数器减,1,,当计数,器减到,0,时,输出端,OUT,产生一个,跳变。,每个计数器可用作定时器,也,可用作计数器。二者的本质都是,基于计数器减,1,工作方式。,所有输入,/,输出都与,TTL,电平兼,容。,8.2.2 计数/定时的内部结构及工作原理,控制寄存器,初始值寄存器,减1计数器,计数输出寄存器,状态寄存器,CLK,GATE,OUT,组成:,控制寄存器,决定工作模式,状态寄存器,反应工作状态,初值寄存器,计数的初值,计数输出寄存器,CPU从中读,当前计数值,计数器,执行计数操作,,CPU不能访问,每个计数器有三个引脚与外设相连:,CLK,外脉冲输入端,GATE,门控输入端,OUT,计数器回零/时间到的信号输出端,8.2.3 计数/定时的工作原理,工作原理:对CLK信号进行减1计数,首先,CPU把控制字写入控制寄存器,计数初始值写入初值寄存器,计数从初值开始,每当CLK信号出现一次,计数值减1,当计数值减到0,从OUT端输出规定的信号,CLK,信号出现时,计数器是否减1,由门控信号GATE控制,8.2.3 计数/定时的工作原理,CLK是,计数输入信号,计数器对,CLK端出现的脉冲个数进行计数,CLK,端可以输入外部事件,CLK,端可以接入固定频率的时钟信号,从而实现计时,OUT,信号在计数结束时发生变化,可将,OUT,作为外部设备的控制信号,可将,OUT,作为向,CPU,申请中断的信号,CPU,可以从计数输出寄存器读出当前计数值。,读前,应向控制寄存器发送锁存命令,8.2.4 8253的编程结构,1片8253内部有,三个计数器,,结构完全相同,8253的引脚如下图所示。,DIP24,+5V电源。,其内部结构和寻址方式,见:,P.388,一片8253占用四个,连续的端口地址,,分别对应三个计数器CNT0、CNT1、CNT2和控制寄存器。每个计数器内部都有一个8位控制寄存器,三个,控制寄存器共用一个端口,,在编程结构图中画为一个。,8253内部寄存器与地址码A1、A0的关系,A1 A0,0 0 选中CNT0计数器 进行读写,0 1 选中CNT1计数器 进行读写,1 0 选中CNT2计数器 进行读写,1 1 选中控制寄存器 进行写,8.2.4 8253的编程结构,8.2.4 8253的编程结构,8253控制字的格式,每个计数器的初值寄存器(CR)、输出锁存器(OL),都是16位的,但它们对应相同的一个8位端口地址,所以16位的CR、OL作为两个8位寄存器读写,由控制寄存器控制读写高8位/低8位,8.2.5 8253的编程命令,初始化,写入控制字,按控制字要求写入计数初值,计数器初值计算:N=,f,CLK,/,f,OUT,=T,OUT,/T,CLK,例:设三个计数器的CR/OL端口地址为70H、71H、72H,控制寄存器端口地址73H。计数器0,工作模式2,CR/OL仅使用低8位,初值为100,计数值使用二进制,MOV AL,14H,OUT 73H,AL,MOV AL,100,OUT 70H,AL,8.2.5 8253的编程命令,例:设三个计数器的CR/OL端口地址为70H、71H、72H,控制寄存器端口地址73H。计数器2,工作模式1,CR/OL使用16位,初值为1234,计数值使用BCD,MOV AL,B3H,OUT 73H,AL,MOV AX,1234H,OUT 72H,AL,MOV AL,AH,OUT 72H,AL,8.2.5 8253的编程命令,读出命令,1)发出锁存命令,使当前计数值锁存在OL中,2)读OL,获得当前计数值,例:设三个计数器的CR/OL端口地址为70H、71H、72H,控制寄存器端口地址73H。读出计数器0的当前计数值,放在,BX,中,MOV AL,0H,OUT 73H,AL,IN AL,70H,MOV BL,AL,IN AL,70H,MOV BH,AL,8.2.6 8253的工作模式,工作模式决定以下内容:,1)门控信号的影响,高电平允许,当GATE=0,即使出现CLK,也不计数,模式0,2,3,4,上升沿允许(上升沿触发),模式1,5,2)OUT信号的状态,写入控制字后,OUT的状态,计数过程中,OUT的状态,计数终了,OUT的状态,3)计数操作可否重复,不可重复模式0,4,自动重复模式2,3,条件重复模式1,5,8.2.6 8253的工作模式,六种工作模式,详见P.230,各种工作模式相同之处:,控制字写入计数器,所有的控制,逻辑电路立即复位,,,输出端,OUT,进入初始状态,计数初始值写入(,GATE,上升沿)之后,要,经过一个,时钟周期,,计数执行部件才可以,开始进行计数,操作。,因为第一个下降沿将计数寄存器的内容送减,1,计数器,在每个时钟脉冲,CLK,的,上升沿,,,采样门控信号,GATE,在时钟脉冲的,下降沿,,计数器作,减,1,计数,注意区分的几点:,不同的工作方式,启动计数器工作的方式不同,OUT,输出波形不同,GATE,信号的作用不同,本次计数过程中,,GATE,信号的改变对计数的影响,本次计数过程中,写入计数初值对计数的影响,8.2.6 8253的工作模式,8.2.6 8253的工作模式,方式0:,计数初值写入,CR后,OUT,由0到1跳变,出现在,n+1个时钟脉冲之,后,延迟时间T,D,=(n+1)T,CLK,方式1:,单脉冲宽度,T=n T,CLK,方式2:,对输入端,n个时钟脉冲,在输出端仅出现一个时钟脉冲(负脉冲),N分频计数器,8.2.6 8253的工作模式,方式(方波发生器,),例:计数器工作模式3,计数器初值15,时钟脉冲频率为2MHz,确定,OUT端输出方波的特性。,解:T,CLK,=1/2MHz=500ns,计数器初值15为奇数,输出分频波高电平宽度,T,CLK,(N+1)/2=4,s,输出分频波低电平宽度,T,CLK,s,方式4、5:,触发后n+1,个时钟脉冲之后输出端产生,选通脉冲信号,计数的启动,方式,0,、,2,、,3,、,4,都是在写入计数初值之后,就开始计数的,而方式,1,和方式,5,需要,GATE,端来外部触发脉冲,(条件),,才开始计数,输出波形,方式,2,、,4,、,5,的输出波形相似,方式,2,、,3,的波形连续,方式,3,为方波,方式,1,输出的是宽度为为,N,个,CLK,脉冲周期的低电平有效脉冲,方式,0,在计数数过程中输出为低电平,,计数结束时变为高电平,8.2.7 8253计数器小结,(1)8253工作方式小结,门控信号,GATE,可以控制计数过程,方式,0、2、3、4是电平起作用,,允许,/,禁止计数,方式,1,、,2,、,3,、,5,是上升沿起作用,启动计数,对方式,2,、,3,来说,,GATE,信号的电平、上升沿,都可以起作用,8.2.7 8253计数器小结,8253的工作模式举例,例:,计数器0工作模式4,,初始化计数器,,使装入计数器10,s后产生选通信号(,设时钟频率2MHz,8253,端口地址为50H53H,)。,解:,n+1=T/T,CLK,=10/0.5=20,n=19=13H,MOV AL,18H,OUT 53H,AL,MOV AL,13H,OUT 50H,AL,8.2.8 8253的应用,1.PC,机中8253的应用,计数器0:,向系统日历时钟提供定时中断,模式3,控制字36H,计数器初始值0,计数器1:,动态RAM刷新,模式2,控制字54H,计数器初始值18(12H),计数器2:,控制扬声器发声,模式3,控制字B6H,计数器初始值1331(533H),PC,机中,8253的端口地址为40H43H,8.2.8 8253的应用,2.扬声器控制,设计一个程序,使扬声器发出600Hz频率的声音,按下任意键声音停止,PC,机的发声系统以计数器2为核心。CLK2的输入频率1.19MHz,改变计数器初值可以由OUT2得到不同频率的方波输出对于600Hz,,发声系统受8255芯片B口的两个输出端线PB0、PB1,的控制,PB0为1,使GATE2为1,计数器2能正常计数PB1为1,打开,输出控制门,8.2.8 8253的应用,2.扬声器控制,CODE SEGMENT,ASSUME CS:CODE,START:,IN AL,61H,OR AL,03H,OUT 61H,AL,MOVAX,1983,OUT42H,AL,MOVAL,AH,OUT 42,AL,MOVAH,01H,INT 21H,INAl,61H,AND AL,0FCH,OUT 61H,AL,MOVAH,4CH,INT 21H,CODE ENDS,END START,8.2.8 8253的应用,3.以2MHz,输入8253,实现每5秒定时中断(设8253端口地址40H43H),分析:,8253最大初值65536,CLK=2MHz可实现最大时间间隔,65536/(2,10,6,所以需要两个计数器串联,一个计数器的输出作为另一个计数器的输入,8.2.8 8253的应用,计数器1:模式2,OUT1每5ms输出一个脉冲,初值(2,10,6,)/(1/0.005)=10000,计数器0:模式2,OUT0每5s输出一个脉冲,初值(,1/0.005)/(1/5)=1000,OUT0,GATE0,CLK0,OUT1,GATE1,CLK1,+5V,+5V,2MHz,每5秒产生一个脉冲,程序:,MOV AL,74H,OUT 43H,AL,MOV AX,10000,OUT 41H,AL,MOV AL,AH,OUT 41H,AL,MOV AL,74H,MOV AL,34H,OUT 43H,AL,MOV AX,1000,OUT 40H,AL,MOV AL,AH,OUT 40H,AL,8.2.8 8253的应用,4.系统机外扩展实验台,连接关系如下图所示,8253端口地址,0200H0203H。已知CLK0输入的信号频率为250kHz。现,要求CNT0 工作于方式3,其OUTO输出连接到CNT1的CLK1,,作为CNT的脉冲输入源;若使CNT1输出一个周期性的秒钟脉,冲信号,进行编程实现。,计算出计数初值;写出CNT0和CNT1的初始化程序段。,8.2.8 8253的应用,MOV DX,0203H,MOV AL,36H,OUT DX,AL,MOV DX,0200H,MOV AL,0C4H,OUT DX,AL,MOV AL,09H,OUT DX,AL,MOV DX,0203H,MOV AL,74H,OUT DX,AL,MV DX,0201H,MOV AL,064H,OUT DX,AL,MOV AL,00H,OUT DX,AL,分析计算初值:,设定CNT0工作方式3,输出方波信号,周期为10ms,则其计数初值为:N0=T/tc=10ms*250K=2500=09c4H.,CNT1工作方式2,输出方波信号,周期为1s,则其计数初值为:N1=T/tc=1/10ms=100=64H.,方式控制字:,CNT0方式3控制字为:36H,CNT1方式2控制字为:74H,8.3 可编程并行接口8255A,8255A是通用的可编程并行接口芯片(Programmable Peripheral,Interface,PPI),8255A可将任一个与TTL兼容的I/O设备与CPU相连,在PC机中,被用作,键盘和并行打印机端口的接口,。,输出提供至少的吸收(逻辑0)电流,最大为4mA,8.3.1 8255A基本功能,主要功能特点:,可编程通用并行输入,/,输出接口电路,通用性强,使用灵活,通过它,CPU,可直接与外设相连,具有三个相互独立的输入,/,输出端口,A,端口、,B,端口、,C,端口,三个端口可联合使用,构成具有握手联络信号的并行接口,端口有多种工作方式可供选择,A,口有三种工作方式:方式,0,、,1,、,2,B,口有二种工作方式:方式,0,、方式,1,8.3.2 8255A内部结构及引脚,一、8255A内部结构,二、8255A的引脚功能,和外设连接的引脚,PA0PA7,:,A,口数据线,PB0PB7,:,B,口数据线,PC0PC7,:,C,口数据线,也可作为和外设的联络线,和,CPU,连接的引脚,D7D0,、,A0,、,A1,、,RESET,RESET,:输入、高电平有效。,当它有效时,内部所有寄存器清,0,,三个数据端口均被 设置为输入方式。,A1A0,:端口选择信号,输入。,8255A,有四个端口,分别为,A,口、,B,口、,C,口和控制寄存器。,8255A的端口选择操作,A,0,A,1,操 作,数据传送方向,0,0,1,0,0,读A口,A口数据总线,0,0,1,0,1,读B口,B口数据总线,0,0,1,1,0,读C口,C口数据总线,0,0,1,1,1,无操作,D,0,D,7,为三态,0,1,0,0,0,写A口,数据总线A口,0,1,0,0,1,写B口,数据总线B口,0,1,0,1,0,写C口,数据总线C口,0,1,0,1,1,写控制口,数据总线控制口,0,1,1,无操作,D,0,D,7,为三态,1,禁止,D,0,D,7,为三态,二、8255A的引脚功能,8.3.3 8255A的控制字,两个控制字,工作方式控制字,设定工作方式、选择输入,/,输出,C,口的输入,/,输出可分为两个,4,位口分别设置,写入控制口(,A0=1,、,A1=1,),特征位,D7=1,C,口置位,/,复位控制字,控制,C,口的相应位置位(输出,1,)或复位(输出,0,),写入控制口(,A0=1,、,A1=1,),特征位,D7=0,8.3.3 8255A的控制字,8.3.4 8255A的三种工作方式,A口:可在三种方式下工作,方式0、方式1、方式2,B口:可在两种方式下工作,方式0、方式1,A口和B口工作方式是由写入控制寄存器的工作,方式控制字决定的,A口和B口的工作方式的设置是相互独立的,8.3.4 8255A的三种工作方式,方式,0,基本的输入,/,输出方式,特点:,不使用固定的联络信号,两个,8,位端口,两个,4,位端口,端口可作为输入,/,输出,各端口的输入,/,输出可以有,16,种不同的组合,输出锁存、输入不锁存,应用:,无条件传送方式,可实现三路数据传送(,8,位),查询传送方式,没有固定联络信号,可任意选择,A,口、,B,口、,C,口作为查询的状态口,一般将,A,口、,B,口作为数据端口,而,C,口分成两个,4,位口,来为,A,口、,B,口的数据传输提供联络信号。其中一个,4,位口作为输入口,,用来输入外设的状态信号;而另一个,4,位口作为输出口,用来输出,发给外设的控制信号,8.3.4 8255A的三种工作方式,方式,1,选通的输入,/,输出方式,特点:,使用固定的联络信号(输入联络信号必用),可以使用中断,A,、,B,口可工作在方式,1,,,C,口某些位被规定为联络信号,而没有,规定的位可以工作在方式,0,,可选择输入,/,输出,A,口方式,1,(,0,)、,B,口方式,1,(,0,),A,、,B,口分别设置输入,/,输出,输出、输入均带锁存,方式1输入时规定的联络信号,8.3.4 8255A的三种工作方式,/STB(Strobe):选通输入信号,,低电平有效。该信号由外设产生,输出到,8255A。当它有效,将外设送来的数据信号锁存到A口或B口的输入锁存器中。,IBF(Input Buffer Full):输入缓冲器满,高电平有效。,该信号作为的应答,信号,是8255A输出到外设的联络信号。当它有效时,表示数据已到达8255A,数据端口的输入锁存器,但CPU还未取走,通知外设暂停送数据。,8.3.4 8255A的三种工作方式,方式1输出时规定的联络信号,/OBF(Output Buffer Full):输出缓冲器满信号,低电平有效。,该信号由8255A,送给外设。当它有效时,通知外设可以从A口或B口取走CPU写入的数据。,/ACK(Acknowledge):响应信号,低电平有效。,该信号作为的应答信号,,是由外设送给8255A。当它有效时,表示外设已经从8255A的A口或B口取走了,数据,8.3.4 8255A的三种工作方式,特点:,只适用于A口,且C口提供固定的联络信号,当A口工作在方式2、B口可工作在方式0或1,C口没有被指定为联络信号的其他位可以工作在方式0,可选择输入/输出,方式,2,双向传输方式,方式2规定的联络信号,作业,与外设交换数据的方式及其特点,2.设8253三个计数器的CR/OL端口地址为70H、71H、72H,控制寄存器端口地址73H。编写程序片段,使:,计数器0,工作模式1,使用16位,初值为1234,BCD计数,计数器1,工作模式4,使用低8位,初值为100,二进制计数,计数器2,工作模式2,使用16位,初值为65536,二进制计数,3.设8253的端口地址同2,编写程序片段,读出计数器2的内容,并把读出的数据装入寄存器AX.,4.设计数器的时钟输入频率为1.91MHz,为产生25,KHZ的 方波输出信号,应向计数器装入的计数初值为多少?,5.音符1、2、3、4、5、6、7的频率分别为350、393、441、467、525、589、661,编写一个程序,使用户按下17键时扬声器发出相应的音符,按下其他键退出程序。,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 初中其他

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

关于我们      便捷服务       自信AI       AI导航        抽奖活动

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

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

gongan.png浙公网安备33021202000488号   

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

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

客服