网站大量收购独家精品文档,联系QQ:2885784924

可编程定时计数器与串行通信教学课件PPT.ppt

可编程定时计数器与串行通信教学课件PPT.ppt

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
可编程定时计数器与串行通信教学课件PPT

* 第七章 可编程定时/计数器与串行通信 §7.1可编程定时器/计数器8253 一、概述 1、计数器与定时器 通常按计数的实现方法可将计数器操作分为:增量计数器和减量计数器两种。增量计数器是指当计数脉冲到来后,计数的计数值加“1”;减量计数器反之。增量计数器常用于对事件的累计,而减量计数常用于限量计数。增量计数关心的是当前计数的量,减量计数关心的是计数终到的时刻。 在微机系统或微机应用系统,特别是控制系统中,经常有计数和计时的要求。从原理上讲计数器和计时器(定时器)都是对脉冲进行计数,如果,计数脉冲的频率(周期)的确定的就可以通过对脉冲计数达到计时(定时)的目的。例如自行车上里程表就是对圈数计数然后换算为公里,电话通话时间计时等。这些应用在计算机中的处理方法不外乎两种:软件方法和硬件方法。 软件定时 就是根据所需要的时间常数来设计一个延迟子程序,这样作的优点是节省硬件,但耗费CPU的资源较多,降低了CPU效率,且编写软件略显麻烦,通常延迟时间较小且重复次数有限的情况下,使用该方法。 硬件定时 采用电子器件构成定时或延时电路,例如单稳电路。电路触发后延时时间的长短由电路中的定时元件的RC值(RC时间常数)所决定,这种定时方法的缺点是,要改变定时间隔必须改变电路元件,不灵活。 可编程硬件定时 采用可编程的计数/定时芯片完成。定时值及其可调整范围,都可以通过软件编程确定和改变,功能灵活使用方便。(软硬件结合) Intel 8253就是这种可编程计数器/定时器集成芯片。 二、 8253的工作原理 计数器/定时器的功能:?? 对外部事件发生次数进行计数。 产生计算机系统需要的定时信号。 计数和计时本质上是相同的,它们都是对一个输入脉冲进行计数。计数器的输入信号可以是随机信号,定时器的输入信号要求具有固定周期。如果输入脉冲的频率一定,那么记录脉冲的个数与所需的时间是一一对应的关系。例如输入脉冲频率为2MHz,那么计数2×106 ?计时1秒。 因此,使用同一个芯片,既可以用来计数,又可以用来定时。计数器/定时器8253可以通过编程,从6种工作方式中选择一种工作方式。 三、8253A的内部结构和引脚信号 每个8253A有3个独立的计数/定时器,分别为0#、1#和2#。每个计数/定时器是相同的。CLKi为脉冲输入端、OUTi为输出端、GATEi为门控制端。 D7~D0:数据信号,双向。 RD:读控制信号,输入,低有效。 WR:写控制信号,输入,低有效。 CS:片选信号,输入,低有效。 A1、A0:是片内地址选择信号 VCC:电源+5V GND:地。 四、计数器/定时器的组成 控制字寄存器——决定工作模式(8位) 状态寄存器——反应工作状态 初值寄存器——计数的初值(16位) 计数输出寄存器——CPU从中读当前计数值(16位)。 计数器——执行计数操作,CPU不能访问。(16位) 首先,CPU把控制字写入控制寄存器,计数初始值写入初值寄存器。 计数从初值开始,每当CLK信号出现一次,计数值减1;当计数值减到0,从OUT端输出规定的信号。 CLK信号出现时,计数器是否减1,由门控信号GATE控制。 8253作为定时器使用时,其定时时间计算公式为: 例:在某系统中,8253的CLK上的计数脉冲频率为0.5MHz,8253计数器的初值是n=500,0.5MHz的时钟脉冲周期为T=2μs,则: 定时时间= 2μs ×500=1ms。 注意:8253 外部输入引脚CLKi上的时钟脉冲频率不能大于2MHz。 五、控制字和工作方式 在对8253进行编程时,由CPU向它写控制字,来选定计数器通道,并规定所选计数器的工作方式。控制字格式: 1. 方式0:计数结束中断方式(低电平输出) 该方式计数器只计数一遍。 写入控制字后OUT=0,初值写入初值寄存器后下一个CLK的下沿,初值写入减1计数器,若GATE=1,开始计数。 计数过程中,可由GATE=0时暂停计数,GATE=1时继续计数; 在计数过程中可改变计数值。若是8位数,写入新值后,计数器按新值重新开始计数。若是16位数,写入低8位后,计数器停止,待高8位写入后,计数器按新值开始计数; 2. 方式1:硬件触发单稳态输出方式 写入控制字CW后OUT=1。初值N写入初值寄存器。GATE脉冲的上沿的下一个CLK的下沿,初值装入减1计数器,开始计数,同时OUT=0。 若计数值为N,则输出脉冲宽度为N*CLK; 计数到0,可由GATE再次触发,输出一个脉冲,不需重新赋值; 若计数过程中,门控信号再次触发,计数器在触发信号的下一个CLK重新开始计数,OUT保持低电平; 若计数过程中,CPU可改变计数值,但计数过程不受影响,再次触发

文档评论(0)

hhuiws1482 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:5024214302000003

1亿VIP精品文档

相关文档