常用可编程数字接口电路新.pptx
《常用可编程数字接口电路新.pptx》由会员分享,可在线阅读,更多相关《常用可编程数字接口电路新.pptx(78页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、本本 章章 内内 容容1 13 32 24 4概 述可编程定时器/计数器Intel 8253可编程并行接口芯片Intel 8255A可编程串行输入/输出接口Ins 8250第1页/共78页第一节第一节 概概 述述 可编程数字接口电路根据其在系统中所起的作用可分为两大类:专用控制器在系统工作过程中起到一定的管理控制作用;通用接口芯片(如图7-1所示)主要用于数据通信。第2页/共78页第一节第一节 概概 述(续)述(续)从它们的结构上看,可以把一个接口分为两部分:从它们的结构上看,可以把一个接口分为两部分:左半部分接口与左半部分接口与系统总线相连,系统总线相连,包括总线收发器包括总线收发器及读写控
2、制逻辑及读写控制逻辑右半部分接口与右半部分接口与各种各种I/O设备相设备相连,包括状态寄连,包括状态寄存器、控制寄存存器、控制寄存器、数据输入器、数据输入/输出锁存器和缓输出锁存器和缓冲器。冲器。图7-1通用接口芯片第3页/共78页第二节第二节 可编程定时器可编程定时器/计数计数器器 Intel 8253Intel 8253基本概念:定时定时:产生符合时间要求的信号的过程;计数计数:对一些脉冲信号或外部事件的数量进 行统计的过程;第4页/共78页第二节第二节 可编程定时器可编程定时器/计数器计数器 Intel 8253Intel 8253定时器和计数器在工作方式上有许多相似之处:作为计数器时,
3、输入的计数信号是随机的,计数的是外部脉冲信号;作为定时器时,输入的脉冲信号具有周期性,计数的是内部基准时钟产生的脉冲。一个定时电路可一个定时电路可完成计数功能。完成计数功能。第5页/共78页第二节第二节 可编程定时器可编程定时器/计数器计数器 Intel 8253Intel 8253计算机系统中的定时方法包括:软件定时:通过CPUCPU执行一个循环程序获得;节省硬件资源;但降低了CPUCPU的效率。不可编程:硬件定时 可编程:由计数器等元器件组建的一由计数器等元器件组建的一个专用的计时电路。个专用的计时电路。由大规模集成电路芯片构成,由大规模集成电路芯片构成,定时时间及定时方式可通过定时时间及
4、定时方式可通过软件编程灵活设置。软件编程灵活设置。第6页/共78页Intel 8253 Intel 8253 的内部结构及外部引的内部结构及外部引脚脚Intel 8253的主要功能有:具有具有3 3个独立的个独立的1616位定时位定时/计数通道,分别称为计数计数通道,分别称为计数器器0 0,计数器,计数器1 1和计数器和计数器2 2。每个通道有每个通道有6 6种工作方式,可实现精确定时及对外部种工作方式,可实现精确定时及对外部脉冲计数,由程序进行设置选择;脉冲计数,由程序进行设置选择;每个通道内的计数器均可以按照二进制或每个通道内的计数器均可以按照二进制或BCDBCD码计数;码计数;每个计数器
5、的计数速率可达每个计数器的计数速率可达2MHz2MHz(Intel 8254Intel 8254最高计最高计数速率达数速率达10MHz10MHz););可由软件方便的设置延时时间的长短;可由软件方便的设置延时时间的长短;所有输入输出都与所有输入输出都与TTLTTL兼容。兼容。第7页/共78页Intel 8253Intel 8253的内部结构的内部结构Intel 8253的内部结构如图7-2a所示。计数器计数器0 02 2是三是三个定时器个定时器/计数器计数器通道,内部结构通道,内部结构相同,如相同,如图图7-2b7-2b所示。所示。数据总线缓冲器是数据总线缓冲器是Intel 8253Intel
6、 8253与系统与系统数据总线连接的数据总线连接的8 8位位双向三态缓冲器。双向三态缓冲器。读读/写逻辑电路写逻辑电路接收来自系统总接收来自系统总线的信号。线的信号。控制字寄控制字寄存器存器第8页/共78页Intel 8253Intel 8253的外部引脚的外部引脚Intel 8253Intel 8253的外部引脚如图7-2c7-2c所示。D D7 7D D0 0:八:八位双向三位双向三态数据线;态数据线;A A1 1、A A0 0:用于:用于寻址三个计数寻址三个计数器和控制字寄器和控制字寄存器。存器。这三个信号分别这三个信号分别是写、读和片选是写、读和片选信号。信号。CLKCLK0 0CLK
7、CLK2 2:计数脉冲信计数脉冲信号输入。号输入。GATEGATE0 0GATEGATE2 2:门:门控信号输入引脚。控信号输入引脚。OUTOUT0 0OUTOUT2 2:计数器计数器0 02 2的的计数结束输出计数结束输出引脚。引脚。第9页/共78页Intel 8253Intel 8253的工作方式的工作方式每个通道都具有六种工作方式的选择权,需注意以下几点:当控制字写入当控制字写入Intel 8253Intel 8253时,其内部所有的控制逻辑电时,其内部所有的控制逻辑电路立即复位,输出端路立即复位,输出端OUTOUT进入初始状态;进入初始状态;软启动:软启动:计数器的启动计数器的启动 硬
8、启动:硬启动:多数情况下,计数器启动一次只工作一个周期,但有两多数情况下,计数器启动一次只工作一个周期,但有两种方式可供选择,若选择则自动重复计数。种方式可供选择,若选择则自动重复计数。用输出指令向计数器赋初值启动计数;写入计数初值后计数器并未启动,需门控信号GATE变成高电平时才能启动;第10页/共78页Intel 8253Intel 8253的工作方式(续)的工作方式(续)方式0 工作于方式0(计数结束中断方式)时,各引脚信号时 序关系见图7-3(a)。方式1 工作于方式1(可重触发的单稳态触发器)时,各引脚 信号时序关系见图7-3(b)。方式2 工作于方式2(分频器)时,各引脚信号时序关
9、系见图 7-3(c)。方式3 工作于方式3(方波发生器)时,各引脚信号时序关系 见图7-3(d)。方式4 工作于方式4(软件触发的选通信号发生器)时,各引 脚信号时序关系见图7-3(e)。方式5 工作于方式5(硬件触发的选通信号发生器)时,各引 脚信号时序关系见图7-3(f)。第11页/共78页第12页/共78页第13页/共78页Intel 8253Intel 8253的工作方式(续)的工作方式(续)表表7-27-2给出了给出了GATEGATE信号功能表,即信号功能表,即GATEGATE信号在各种信号在各种工作方式下对计数器计数过程的影响。工作方式下对计数器计数过程的影响。表表7-27-2GA
10、TEGATE信号功能表信号功能表第14页/共78页Intel 8253Intel 8253的工作方式(续)的工作方式(续)表表7-37-382538253工作方式一览表工作方式一览表第15页/共78页Intel 8253Intel 8253的初始化编程的初始化编程 通过初始化编程可确定Intel 8253各通道的工作方式及计数初值。工作方式的确定通过向Intel 8253控制寄存器中写入控制字来完成。1.82531.8253控制字格式(如控制字格式(如图图7-47-4所示)所示)第16页/共78页2.2.初始化编程初始化编程u对计数器设置初值前,必须先写控制字以确定工作方式。u初值设置时,要符
11、合控制字中的格式规定。在对8253编程的过程中,有两种情况:对8253执行写操作,即写入控制字和计数初值,规定和启动计数器工作,为初始化编程;对8253执行读操作,读出的是指定通道的当前计数值。Intel 8253Intel 8253的初始化编程的初始化编程第17页/共78页2.2.初始化编程初始化编程初始化编程初始化编程当为软启动时,写入初值后,计数就开始了。读取读取82538253的计数值的计数值 为了保证读到稳定准确的数据,通常采用以下两种作法:1)利用GATE信号使计数过程暂停。2)利用将控制字中D5D4位置成00的方法将待读计数值锁存至锁存器,这种方法不影响计数过程。Intel 82
12、53Intel 8253的初始化编程的初始化编程第18页/共78页Intel 8253Intel 8253的应用举例的应用举例【例7-1】用8253(地址40H43H)将5MHz的脉冲变为1Hz的脉冲。图图7-57-5例例7-17-1系统连接图系统连接图分析:可采用方式2分频器完成,但初值=FCLK/FOUT=5MHz/1Hz=510665536,怎么办?解决的办法是:需要2个T/C(定时器/计数器通道)级联,T/C0采用方式3产生连续分频方波,做T/C1的CLK,T/C1采用方式2产生1Hz脉冲。两个T/C的GATE统一控制。系统连接如图7-5所示。第19页/共78页Intel 8253In
13、tel 8253的应用举例的应用举例例例7-17-1程序如下:程序如下:MOV AL,00110111B;T/C0控制字 OUT 43H,ALMOV AX,5000H;T/C0 初值OUT 40H,ALMOV AL,AHOUT 40H,ALMOV AL,01110101B ;T/C1 控制字 OUT 43H,AL MOV AX,1000H ;T/C1初值OUT 41H,ALMOV AL,AHOUT 41H,AL第20页/共78页Intel 8253Intel 8253的应用举例的应用举例【例7-2】8253的CLK0的时钟频率是8KHz,在系统如图7-6的连接方式下,编程使其能产生周期为9s,
14、占空比为5:9的方波,同时计算T/C0最大定时时间是多少?图图7-67-6例例7-27-2系统连接图系统连接图第21页/共78页【例例7-27-2】分析:分析:1 1 在在CLKCLK0 0已知的情况下,可算出其周期,最大定时时间与已知的情况下,可算出其周期,最大定时时间与CLKCLK周期及计周期及计数初值的最大值有关。数初值的最大值有关。2 2 根据系统连接图,可分析出根据系统连接图,可分析出Intel 8253Intel 8253端口地址为端口地址为90H90H、92H92H、94H94H和和96H96H,同时,可将,同时,可将T/CT/C0 0 设置为方式设置为方式3 3,使其产生,使其
15、产生1Hz1Hz;T/CT/C1 1设置为方式设置为方式3 3,产生周期为,产生周期为9 9秒,占空比为秒,占空比为5:95:9的方波。的方波。Intel 8253Intel 8253的应用举例的应用举例第22页/共78页Intel 8253Intel 8253的应用举例的应用举例【例例7-27-2】解:解:TCLKTCLK0 0=1/fCLK=1/fCLK0 0 =1/8000=0.125ms =1/8000=0.125ms最大定时时间 655360.125ms655360.125ms 8.192s8.192s产生方波的初始化程序如下:MOV ALMOV AL,00110111B 00110
16、111B ;T/CT/C0 0 控制字 OUT 96HOUT 96H,ALALMOV AX,8000H MOV AX,8000H ;T/CT/C0 0 初值OUT 90HOUT 90H,ALALMOV AL,AHMOV AL,AHOUT 90HOUT 90H,ALALMOV ALMOV AL,01110111B 01110111B ;T/CT/C1 1 控制字OUT 96HOUT 96H,ALALMOV AX,9H MOV AX,9H ;T/CT/C1 1初值OUT 92HOUT 92H,ALALMOV AL,AHMOV AL,AHOUT 92HOUT 92H,ALAL第23页/共78页Int
17、el 8253Intel 8253的应用举例的应用举例【例7-3】下面是一个航空发动机数字控制系统中采用8253测速的实例。硬件电路如图7-7(a)所示,传感器输出的转速信号经过衰减、滤波和光电耦合处理,再经过整形电路送到8253计数器,进行测量。被测发动机低压转子转速n为0转/分11156转/分,发动机每转对应转速传感器输出300个脉冲。基本测量原理是,测量D个(D值根据当时实际转速范围选择)传感器输出脉冲CLK,所占有的时间为多少个(设为X个,待测)标准时钟周期PCLK(设为Tr,单位s,由系统时钟适当分频而成),即 从而算出实转速 第24页/共78页图7-7 例7-3图a)转速测量电路I
18、ntel 8253Intel 8253的应用举例的应用举例第25页/共78页【例7-3】8253的3个计数器分别工作于方式0、方式1和方式0。图7-7(b)为测量过程的时序。工作过程为:通过OUT0的脉冲下降沿(反相后为上升沿)触发GATE1,使计数器1开始对被测转速脉冲计 数;同 时,OUT1经 反 相 后 使GATE2为高电平(在计数期间),允许计数器2对基准时钟信号PCLK计数。在计数器1计满D个脉冲后,OUT1输出高电平,经反相后为低电平,迫使计数器2停止计数。此时,CPU读出计数器2中的计数值即可算出发动机的转速。Intel 8253Intel 8253的应用举例的应用举例图7-7
19、例7-3图b)测量过程时序第26页/共78页Intel 8253Intel 8253的应用举例的应用举例设8253端口地址为280H、282H、284H和286H,主要程序片段如下:主程序中对8253初始化:INIT_C:MOV DX,286H;控制端口地址为286H MOV AL,52H;计数器1初始化:方式1;只读/写低字节 OUT DX,AL;送方式控制字到控制寄存器 MOV AL,0BOH;计数器2初始化:方式0;先读/写低字节,后读/写高字节 OUT DX,AL MOV AL,10H;计数器0初始化:方式0;只读/写低字节 OUT DX,AL第27页/共78页INIT_D:MOV D
20、X,282H;计数器1MOV AL,20OUT DX,AL;写入计数初值D=20到计数器1INC DXINC DX;得到计数器2的地址MOV AL,0OUT DX,AL;写入低8位计数值到计数器2OUT DX,AL;写入高8位计数到计数器2,初值0相当于10000H MOV DX,280H;计数器0 MOV AL,01H OUT DX,AL;写入计数初值1到计数器0,启动测量过程中断;服务程序中,读取计数器2的数据,计算转速Intel 8253Intel 8253的应用举例的应用举例第28页/共78页IN_DATA:MOV AL,10000000B MOVDX,286H OUTDX,AL;锁存
21、计数器2 MOVDX,284H;读计数器2的内容,等于10000HX INAL,DX MOVAH,AL INAL,DX XCHG AL,AH NEGAX;AX=X Intel 8253Intel 8253的应用举例的应用举例第29页/共78页第三节第三节可编程并行接口芯片可编程并行接口芯片 Intel 8255AIntel 8255A计计算算机机与与外外部部设设备备之之间间,计计算算机机与与计计算算机机之之间间的的信信息息交交换换称称为为通通信信。从从数数据据传传输输的的形形式式上上区区分分,通通信信有两种方式:并行通信与串行通信。有两种方式:并行通信与串行通信。并并行行通通信信顾顾名名思思义
22、义即即n n位位二二进进制制数数借借助助n n条条数数据据线线同同时时传传输输的的方方式式。并并行行通通信信传传输输速速度度快快、效效率率高高。常常用用于于数数据据传传输输速速度度要要求求高高而而传传输输距距离离较较短短的的场场合合。在在并并行行通通信信的的过过程程中中,常常常常借借助助于于一一些些并并行行接接口口电电路。路。Intel Intel 8255A8255A即即IntelIntel公公司司生生产产的的8 8位位可可编编程程并并行行接接口口芯片。芯片。第30页/共78页Intel 8255A Intel 8255A 的内部结构的内部结构图7-88255A内部结构框图三个三个8 8位并
23、行输入输出端位并行输入输出端口:口:8255A(8255A(端口端口A A、端口、端口B B、端口、端口C)C)有有A A、B B、CC三个三个8 8位并行输入输出端口。位并行输入输出端口。A A口、口、B B口通常作为独立的口通常作为独立的8 8位位I/OI/O端口使用,端口使用,CC口也可以口也可以作为一般的作为一般的8 8位位I/OI/O端口使用,端口使用,也可以做为也可以做为2 2个个4 4位的位的I/OI/O端端口使用口使用 。各端口的功能见各端口的功能见表表7-47-4。数据总线缓数据总线缓冲器是一个冲器是一个双向三态的双向三态的8 8位缓冲器位缓冲器A A组和组和B B组控制电路
24、接受读组控制电路接受读/写控写控制逻辑的信号并根据制逻辑的信号并根据CPUCPU送入的送入的控制字,决定各端口的工作方式。控制字,决定各端口的工作方式。A A组控制电路控制组控制电路控制A A口和口和CC口的高口的高4 4位位(PC(PC7 7PCPC4 4);B B组控制电路控组控制电路控制制B B口和口和CC口的低口的低4 4位位(PC(PC3 3PCPC0 0)。读读/写控制逻辑用于管写控制逻辑用于管理数据、控制字或状态理数据、控制字或状态字通过相应端口在字通过相应端口在CPUCPU与外设之间的传送。与外设之间的传送。第31页/共78页Intel 8255AIntel 8255A的外部引
25、脚的外部引脚Intel 8255AIntel 8255A芯片采用芯片采用4040脚双列直插式封装,单一脚双列直插式封装,单一5V5V电源,全部输入电源,全部输入/输出均与输出均与TTLTTL电平兼容。电平兼容。1.1.与外设相连的数据线与外设相连的数据线2.2.读写控制线读写控制线与系统总线相连的引脚包括:与系统总线相连的引脚包括:CSCS:片选信号:片选信号RDRD:读信号:读信号WRWR:写信号:写信号RESETRESET:复位信号:复位信号A A1 1、A A0 0:地址线,与系统总线的低两位相接,:地址线,与系统总线的低两位相接,实现对实现对Intel 8255AIntel 8255A
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 常用 可编程 数字 接口 电路
限制150内