可编程定时计数器8253.ppt
《可编程定时计数器8253.ppt》由会员分享,可在线阅读,更多相关《可编程定时计数器8253.ppt(39页珍藏版)》请在三一办公上搜索。
1、可编程定时/计数器8253,苗付友,20010.12,可编程定时/计数器8253,2,8253作用,定时软件定时:让机器执行一段程序,安排循环来实现定时,容易实现,定时时间调整方便,定时精确,占用了CPU资源,降低了CPU的利用率。硬件定时:可编程定时/计数硬件芯片,定时值、定时范围可以很容易的由软件改变,具有使用灵活、功能较强等特点。外部事件计数 外部事件计数就是对外部脉冲信号计数。产生脉冲信号的外部原因就是外部事件。如高速公路入口处一个专用计算机检测系统,它可以自动对进入高速公路的车辆进行计数,20010.12,可编程定时/计数器8253,3,8253的内部结构,8253内部有3个独立的1
2、6位定时计数器通道。计数器可按照二进制或十进制计数,计数和定时范围可在165535之间改变,每个通道有6种工作方式,计数频率可高达2MHz以上。,3个计数通道通道控制寄存器 数据总线缓冲器 读写控制电路,20010.12,可编程定时/计数器8253,4,计数通道,通道0、通道1和通道2 CLK:计数器的脉冲输入端,GATE:计数器的门控信号,OUT:计数器的输出信号,一般与计数溢出有关。工作原理:8253计数器工作在减1状态,每输入一个计数脉冲,计数器值减1,当计数器 计数到零时,OUT信 号有效,通知外设计 数器产生溢出,20010.12,可编程定时/计数器8253,5,通道的使用计数器:将
3、要计数的次数预置到该通道计数器中定时器:从CLK输入一固定频率的时钟脉冲,再根据要求定时的时间计算出定时所需的计数值或称时间常数,并预置到计数器中 计数值定时时间/时钟脉冲周期,20010.12,可编程定时/计数器8253,6,通道控制寄存器,一个通道控制寄存器CPU通过对控制寄存器的读写,可以分别对三个计数通道的工作方式进行设置只能写不能读,20010.12,可编程定时/计数器8253,7,数据总线缓冲器,双向三态的8位数据缓冲器,实现8253和CPU之间的数据接口,读写控制电路,片选信号 CSA1A0的组合:选择三个通道、一个控制寄存器,共4个端口读信号 和写信号 由CPU提供,低电平有效
4、。,20010.12,可编程定时/计数器8253,8,8253的管脚分配,通道管脚 CLKn:通道n的脉冲输入管脚外部事件 或定时脉冲由这三个管脚输入;OUTn:通道n的输出管脚,当计数值减 到0 在OUT管脚上输出,输出波形取决于 8253通道的工作方式;GATEn:门控信号输入管脚,8253的管脚包括数据线D7D0,读写控制线,以及和CPU地址线相连接的片选信号,20010.12,可编程定时/计数器8253,9,8253的编程,控制字 分为4部分,通道选择、计数器读/写方式、工作方式和计数码的选择。,计数器选择(SC1、SC0),计数器读/写方式(RLl、RL0),20010.12,可编程
5、定时/计数器8253,10,计数器的锁存操作 8253一旦初始化后,就不需要CPU参与而自动计数。为了读出计数值时不干扰实际计数过程,同时读出的值又是稳定的,就要求对通道计数器中的计数值进行锁存。硬件锁存暂停计数 GATE 暂停计数软件控制命令锁存 每一个通道都有一个输出锁存器(16位),平时它的值随通道计数器的值变化,当向通道写入锁存的控制命令时,它把计数器的现行值锁存而计数器的计数过程照样进行。这样,CPU读取的是锁存器中的值。当重新写入一个命令字或CPU读取计数值后,计数通道会自动解除锁存状态。锁存控制字:0000XXXXB,先读取低8位,后读取高8位(不锁存):10 00H 0F 00
6、H,20010.12,可编程定时/计数器8253,11,工作方式选择(M2、M1、M0),BCD计数制:写入初值范围为0000到9999,而0000是最大值,代表10000二进制计数制:写入初值范围为0000到FFFFH,其中0000为最大值,代表65536。,控制字的D5D4为00,表示的是锁存命令。这时控制字中的低4位无效,20010.12,可编程定时/计数器8253,12,8253的工作方式,方式0计数结束中断方式 方式1可编程序的单独负脉冲 方式2速率发生器方式3方波发生器 方式4软件触发方式方式5硬件触发方式,20010.12,可编程定时/计数器8253,13,方式0计数结束中断方式
7、,方式0的作用 用户可以在设定时间上产生中断信号 工作方式0特点:门控信号GATE必须为1,计数器才能计数;计数时通道输出端OUT一直为0;通道计数器计数到0后,OUT由0到1,同时计数器停止工作。OUT输出的从低到高的正跳变或高电平可作为中断请求信号INTR,向CPU发出中断请求。在计数过程中,GATE信号为低电平时,停止计数,一旦GATE变高,则继续计数,20010.12,可编程定时/计数器8253,14,INT,8086,MOV AL,10011010B;置8255A方式控制字OUT 8255控制口,ALMOV AL,00H;8255A置位/复位控制字,使PC00OUT 8255控制口,
8、ALMOV AL,00110000B;置8253通道0方式控制字30HOUT 8253控制口,ALMOV AL,40H;置8253通道0时间常数,OUT 通道0端口,AL;第一次写初始计数值的低8位,MOV AL,38H;第二次写高8位。3840H=14400秒=4小时OUT 通道0端口,AL中断程序中有关程序段如下:MOV AL,00000001B;8255置位/复位控制字,使PC01OUT 8255控制口,AL,家庭厨房系统,20010.12,可编程定时/计数器8253,15,方式1可编程序的单独负脉冲,单稳电路在输入的激励下产生固定宽度脉冲的电路,当输入端输入一个不低于规定的最小宽度的脉
9、冲后,单稳电路就输出一个用户事先设定宽度的脉冲。8253的方式1就是一个可编程单稳电路 方式1工作过程门控信号GATE是触发信号,上升沿有效。即开始计数是由GATE的上升沿触发的;触发后,通道计数器开始计数,输出端OUT由高变低;计数器计数到0,OUT再由低变高。PWNTclkPW:输出的负脉冲宽度;N:初始计数值,Tclk:CLK端的脉冲周期,20010.12,可编程定时/计数器8253,16,车辆统计,不同车辆间隔T3不能太小;(PW)同一车辆的不同车厢间距离不能太大;(PW),20010.12,可编程定时/计数器8253,17,方式2速率发生器,方式2是一个可编程的分频电路,它把输入信号
10、CLK分频后以脉冲的形式由OUT输出,而分频系数就是用户事先对通道计数器写入的初始计数值工作方式(OUT初始为高电平)GATE门为1,计数器才能工作,对CLK 端上的脉冲进行计数;当计数器“减”计数到1时,输出端由 高变低,再经过一个CLK周期,即计 数器计数到0时,输出端OUT又跳变 为高。所以方式2输出周期性负脉冲信 号,其宽度固定为一个CLK周期;当计数器的值减为0时,自动重新装入 计数初值,实现循环计数,方式2计数初值重载,20010.12,可编程定时/计数器8253,18,在计数过程中,如果GATE信号为低电平,则停止计数,待GATE信号变为高电平后,从初始值开始重新计数。,方式2定
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 可编程 定时 计数器 8253

链接地址:https://www.31ppt.com/p-4980608.html