您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 第8章 Intel8254
第8章Intel8254第8章Intel82548.1概述8.2Intel8254838254应用8.38254应用同济大学电信学院主要知识点主要知识点掌握定时/计数器基本概念掌握定时/计数器Intel8254同济大学电信学院81概述8.1概述在控制系统中,常常要求有一些实时时钟以实现定时或延时控制,如定时中断时钟以实现定时或延时控制,如定时中断、定时检测、定时扫描等,也往往要求有计数器能对外部事件计数计数器能对外部事件计数。要实现定时或延时控制,有三种主要方法:软件定时、不可编程的硬件定时、可编程的硬件定时器。可编程的硬件定时器。同济大学电信学院81概述8.1概述软件定时——即让计算机执行一个程序段,这个程序段本身没有具体的执程序段这个程序段本身没有具体的执行目的,但由于执行每条指令都需要时间则执行一个程序段就需要一个固定间,则执行个程序段就需要个固定的时间。通过正确地挑选指令和安排循环次数很容易实现软件定时但软件定环次数很容易实现软件定时,但软件定时占用了CPU的时间,降低了CPU的利用率。同济大学电信学院81概述8.1概述DELAY:PUSHAX;11TMOVAL,0FFH;4TTIME1:DECAL4T…..TIME1:DECAL;4TJNZTIME1;16TPOPAX;8TCALLDELAY….RET;16T.延迟时间计算:设CPU时钟为5MHz,时钟周期T=200nS延迟时间=11T+4T+(256*20T)+8T+16T=5159T=5159*200nS=103mS同济大学电信学院=5159T=5159*200nS=1.03mS81概述8.1概述不可编程的硬件定时可以采用小规模集成电路器件如555,外接定时部件——电集成电路器件如555,外接定时部件电阻和电容构成。这样的定时电路简单,而且利用改变电阻和电容可以使定时在一且利用改变电阻和电容,可以使定时在定的范围内改变。但是,这种定时电路在硬件连接好以后定时值及定时范围不能硬件连接好以后,定时值及定时范围不能由程序(软件)来控制和改变,由此就生产了可编程的定时器电路。同济大学电信学院81概述8.1概述1脚—GND,接地脚2脚TRIGGER低电平触发端2脚—TRIGGER,低电平触发端3脚—OUTPUT,电路的输出端4脚—nRESET,复位端,低电平4脚nRESET,复位端,低电平有效5脚—CV,电压控制端6脚—TH,阈值输入端7脚—DIS,放电端8脚V电源电压端其电压8脚—VCC,电源电压端,其电压范围为:3~18V同济大学电信学院81概述8.1概述Tw=1.1RC同济大学电信学院81概述可编程定时器电路的定时值及其范8.1概述可编程定时器电路的定时值及其范围,可以很容易地由软件来确定和改变。所以,功能较强,使用灵活。本章就介绍这种定时器电路。介绍这种定时器电路。同济大学电信学院81概述8.1概述Intel系列的计数器/定时器电路为可编程序间隔定时器PIT(Pbl可编程序间隔定时器PIT(ProgrammableIntervalTimer),型号为8253,改进型为8254。Intel8254具有3个独立的16位计数Intel8254具有3个独立的16位计数器通道,使用单一5V电源,它是24个引脚的双列直插式器件脚的双列直插式器件。同济大学电信学院8118254-PIT的主要功能8.1.18254PIT的主要功能Intel8254-PIT具有以下主要功能:(1)一个芯片上有三个独立的16位计数器通道;(2)每个计数器都可以按照二进制或二—十进制计数;(3)每个计数器的计数速率可高达10MHz;(4)每个通道有6种工作方式,可由程序设置和改变;(5)所有的输入输出都与TTL兼容。同济大学电信学院8128254-PIT的内部结构8.1.28254PIT的内部结构8254的内部结构如所示。由数据总线缓冲器、读/写逻辑、控制字寄存器、计数器0,计数器1,计制字寄存器、计数器0,计数器1,计数器2等组成。同济大学电信学院同济大学电信学院8128254-PIT的内部结构8.1.28254PIT的内部结构1.数据总线缓冲器这是8254与CPU数据总线连接的8位这是8254与CPU数据总线连接的8位双向三态缓冲器。CPU用输入输出指令对8254进行读写的所有信息都是通过这88254进行读写的所有信息,都是通过这8条总线传送的。包括:CPU在初始化编程时,写入8254的控制字;CPU在初始化编程时,写入8254的控制字;CPU向某一通道写入的计数值;CPU从某一个通道读取的计数值或状态同济大学电信学院CPU从某个通道读取的计数值或状态。8128254-PIT的内部结构读辑8.1.28254PIT的内部结构2.读/写逻辑这是8254内部操作的控制部分。首先有这是8254内部操作的控制部分。首先有片选信号CS的控制部分,当CS为高电平(无效)时数据总线缓冲器处在三态与系统效)时,数据总线缓冲器处在三态,与系统的数据总线脱开,故不能进行编程,也不能进行读写操作其次由这部分选择读写操进行读写操作。其次,由这部分选择读写操作的端口(三个计数器及控制字寄存器),也由这部分控制数据传送的方向,读数据由8254传向CPU,写数据由CPU传向8254。同济大学电信学院8254传向CPU,写数据由CPU传向8254。8128254-PIT的内部结构8.1.28254PIT的内部结构3.控制字寄存器在8254的初始化编程时由CPU写入控制字在8254的初始化编程时,由CPU写入控制字以决定通道的工作方式。此寄存器只能写入而不能读出入而不能读出。4.计数器0,计数器1,计数器24.计数器0,计数器1,计数器2这是三个计数器/定时器通道,每一个都是由个16位的可预置值的减法计数器构成由一个16位的可预置值的减法计数器构成。这三个通道的操作是完全独立的。同济大学电信学院8128254-PIT的内部结构8.1.28254PIT的内部结构每个通道都是对输入脉冲CLK按二进制或二十进制从预置值开始减1计数当或二—十进制,从预置值开始减1计数。当预置值减到零时,从OUT输出端输出一信号。同济大学电信学院8128254-PIT的内部结构8.1.28254PIT的内部结构计数器/定时器电路的本质是一个计数器若计数器对频率精确的时钟脉冲计数器。若计数器对频率精确的时钟脉冲计数,则计数器就可作为定时器。计数频率取决于输入脉冲的频率在计数过程中计决于输入脉冲的频率。在计数过程中,计数器受到门控信号GATE的控制。计数器的输入与输出以及与门控信号之间的关系,取决于工作方式。取决于工作方式。同济大学电信学院8128254-PIT的内部结构8.1.28254PIT的内部结构计数器的初值必须在开始计数之前由CPU用输出指令预置在计数过程中,由CPU用输出指令预置。在计数过程中,CPU随时可用输入指令读取任一计数器的当前计数值,这一操作对计数没有影响。响同济大学电信学院8138254-PIT的引脚8.1.38254PIT的引脚Intel8254-PIT的引脚如图所示。8254同济大学电信学院8138254-PIT的引脚输入8.1.38254PIT的引脚CLK:输入脉冲线。计数器就是对这个脉冲计8254这个脉冲计数。同济大学电信学院8138254-PIT的引脚8.1.38254PIT的引脚门控GATE:门控信号输入引脚8254。控制计数器工作的一个外工作的个外部信号。当GATE为高电平GATE为高电平时,才允许计数器工作数器工作。同济大学电信学院8138254-PIT的引脚8.1.38254PIT的引脚输出引OUT:输出引脚。当计数到8254“0”时,OUT引线上必然有引线上必然有输出,输出信号的波形取决号的波形取决于工作方式。同济大学电信学院8138254-PIT的引脚8.1.38254PIT的引脚A1、A0:8253内部端口的选8254内部端口的选择线,它们通常接至地址总常接至地址总线的A1和A0。A1A0操作功能000通道011通道011通道102通道11控制同济大学电信学院11控制8148254-PIT计数启动8.1.48254PIT计数启动8254计数器的计数过程,可以直接用程序指令来启动也可以外部信号启动程序指令来启动,也可以外部信号启动,前者称为软件启动,后者称为硬件启动。1.软件启动即用输出指令向计数器赋初值来启动即用输出指令向计数器赋初值来启动,当CPU将计数器初值赋好后,从下一个脉冲开始对计数器开始减1操作开始对计数器开始减1操作。同济大学电信学院8148254-PIT计数启动8.1.48254PIT计数启动2.硬件启动即写入计数初值后并未启动计数器即写入计数初值后,并未启动计数器,需要GATE变为高电平,才开始计数,GATE变低,停止计数。同济大学电信学院828254-PIT的控制字8.28254PIT的控制字在8254的初始化编程中,由CPU向8254的控制字寄存器写入一个控制字,它规定了8254的工作方式。同济大学电信学院828254-PIT的控制字8.28254PIT的控制字1.计数器选择(D7D6)控制字的最高两位决定这个控制字控制字的最高两位决定这个控制字是哪一个通道的控制字。由于三个通道的作是完全独立的所以需要有个的工作是完全独立的,所以需要有三个控制字寄存器分别规定相应通道的工作方式。但它们的地址是同一个,即A1A0=11——控制字寄存器的地址。A1A011控制字寄存器的地址。同济大学电信学院828254-PIT的控制字8.28254PIT的控制字所以,需要由这两位来决定是哪一个通道的控制字因此,对三个通道的编程需要的控制字。因此,对三个通道的编程需要向同一个地址(控制字寄存器地址)写入三个控制字它们的D7D6位分别指定不同的个控制字,它们的D7D6位分别指定不同的通道。在控制字中的通道选择与通道计数的地回事能淆数道器的地址是两回事,不能混淆。计数通道的地址是用作CPU向计数器写初值,或者从作值计数器读取当前的计数值。同济大学电信学院828254-PIT的控制字8.28254PIT的控制字2.数据读/写格式(D5D4)CPU向计数通道写入初值和读取它们的当CPU向计数通道写入初值和读取它们的当前状态时,有几种不同的格式。例如,写数据时是写入8位数据还是16位数据若是8据时,是写入8位数据还是16位数据,若是8位计数,可以令D5D4=01只写低8位,则高8位自动置0;若是16位计数,而低8位为0,则可令D5D4=10,只写入高8位,而低8位就自动为令,只写入高位,而低位就自动为0;在令D5D4=11时,16位计数就先写入低8位后输入高8位同济大学电信学院,后输入高8位。828254-PIT的控制字8.28254PIT的控制字在读取计数值时,可令D5D4=00,则把写控制字时的计数值锁存以后再读把写控制字时的计数值锁存,以后再读取。3.工作方式(D3D2D1)8254的每个通道可以有6种不同的工8254的每个通道可以有6种不同的工作方式,由这三位决定。每一种方式的特点随后介绍特点,随后介绍。同济大学电信学院828254-PIT的控制字8.28254PIT的控制字4.数制选择(D0)8254的每个通道有两种计数制二进制和8254的每个通道有两种计数制:二进制和二—十进制,由这位决定。在二进制计数时,写入的初值的范围为0000H~FFFFH其中0000H写入的初值的范围为0000H~FFFFH,其中0000H是最大值,代表65536;在二—十进制时,写入的初值的范围为0000~9999其中0000是最大的初值的范围为0000~9999,其中0000是最大值,代表10000。同济大学电信学院8218254-PIT读回命令字8.2.18254PIT读回命令字这个命令可使个计这个命令可使三个计数器得计数值都锁存同济大学电信学院8228254-PIT状态字8.2.28254PIT状态字每个计数器都有一个状态字可由读回命令令其锁存然可由读回命令令其锁存,然后由CPU读取。同济大学电
本文标题:第8章 Intel8254
链接地址:https://www.777doc.com/doc-4892950 .html