第十一章计数器定时器精选文档.ppt
《第十一章计数器定时器精选文档.ppt》由会员分享,可在线阅读,更多相关《第十一章计数器定时器精选文档.ppt(40页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第十一章计数器定时器第十一章计数器定时器本讲稿第一页,共四十页 在在微微机机系系统统或或微微机机应应用用系系统统,特特别别是是控控制制系系统统中中,经经常常有有计数和计时的要求。如日历计时。计数和计时的要求。如日历计时。在计算机中的处理方法不外乎两种:在计算机中的处理方法不外乎两种:硬件方法和软件方法。硬件方法和软件方法。软软软软件件件件定定定定时时时时就就是是根根据据所所需需要要的的时时间间常常数数来来设设计计一一个个延延迟迟子程序子程序。优点:节省硬件;优点:节省硬件;缺缺点点:耗耗费费CPU的的资资源源较较多多,降降低低了了CPU效效率率,且且编写软件略显麻烦;编写软件略显麻烦;通通常常
2、延延迟迟时时间间较较小小且且重重复复次次数数有有限限的的情情况况下下,使使用用该该方方法。法。硬件定时硬件定时硬件定时硬件定时就要用到计数器就要用到计数器/定时器。定时器。优优点点是是不不占占用用CPU时时间间,且且利利用用计计数数器器/定定时时器器产产生生中中断断信信号号,就就可可以以建建立立多多作作业业环环境境,以以提提高高CPU效效率率,由于计数器由于计数器/定时器开销不大,因此得到了广泛应用。定时器开销不大,因此得到了广泛应用。本讲稿第二页,共四十页第一节第一节 计数与定时计数与定时一一.计数与定时的概念计数与定时的概念 在计算机处理计数问题时,首先要将计数在计算机处理计数问题时,首先
3、要将计数量转化为电脉冲的形式,计数的任务即是对某量转化为电脉冲的形式,计数的任务即是对某电脉冲的出现次数进行度量的工作。引发计数电脉冲的出现次数进行度量的工作。引发计数工作的电脉冲称为工作的电脉冲称为计数脉冲计数脉冲。在计算机系统中,更常用的是定时工作,在计算机系统中,更常用的是定时工作,时时间计量间计量 是在统一的时间标准上进行的,这个标准是在统一的时间标准上进行的,这个标准时间通常由振荡器一类电路提供的恒定频率的电脉时间通常由振荡器一类电路提供的恒定频率的电脉冲来担当,定时的工作其实转化为对具有恒定频率冲来担当,定时的工作其实转化为对具有恒定频率的计数脉冲进行的计数脉冲进行计数计数的工作了
4、。的工作了。本讲稿第三页,共四十页二二.计数方法与计数器计数方法与计数器 通常按计数的实现方法,计数器可分为:通常按计数的实现方法,计数器可分为:增量计数器:增量计数器:当计数脉冲到来后,计数的计数值加当计数脉冲到来后,计数的计数值加“1”减量计数器减量计数器:当计数脉冲到来后,计数的计数值减:当计数脉冲到来后,计数的计数值减1。增量计数器常用于对事件的累计,而减量计数常增量计数器常用于对事件的累计,而减量计数常用于限量计数。增量计数关心的是当前计数的量,减量用于限量计数。增量计数关心的是当前计数的量,减量计数计数 关心的是计数终到的时刻。关心的是计数终到的时刻。本讲稿第四页,共四十页计算机系
5、统中,计数操作计算机系统中,计数操作软件实现软件实现硬件实现,硬件实现,二者结合使用二者结合使用。本讲稿第五页,共四十页软件实现计数的方法:软件实现计数的方法:利用计数脉冲引发利用计数脉冲引发CPU中断进行计数。中断进行计数。可可解解决决CPU占占用用率率的的问问题题,但但由由于于CPU响响应应中中断断的的周期的限制,当计数脉冲的频率很高时,可能发生漏计。周期的限制,当计数脉冲的频率很高时,可能发生漏计。硬件方法实现计数:硬件方法实现计数:用专门的计数器芯片完成计数操作。用专门的计数器芯片完成计数操作。实实际际应应用用系系统统中中多多采采用用。将将这这种种计计数数器器连连到到计计算算机机系系统
6、统中中,由由CPU来来设设置置初初值值,由由CPU启启动动计计数数,并并由由CPU来来读读取取计计数数器器的的当当前前值值,计计数数终终到到后后向向CPU发发出出中中断断请请求求,由由CPU处处理理计计数数终终到到后后的的工工作作,则构成一种则构成一种可编程计数器可编程计数器。本讲稿第六页,共四十页三三.定时方法与定时器定时方法与定时器计算机系统中的定时操作又分成计算机系统中的定时操作又分成延时操作延时操作 关心时间间隔和延时终到的时刻关心时间间隔和延时终到的时刻;计时操作计时操作 要求随时了解现在时刻的标准时间。要求随时了解现在时刻的标准时间。软软件件延延时时是是利利用用CPU的的指指令令周
7、周期期进进行行的的延延时时。另另一一种种方方法法是是利用硬件,借助于可编程的计数器进行延时。利用硬件,借助于可编程的计数器进行延时。本讲稿第七页,共四十页四四.计数计数/定时的工作原理定时的工作原理计数和计时本质上是相同的,它们都是对一个输计数和计时本质上是相同的,它们都是对一个输入脉冲进行计数,如果输入脉冲的频率一定,那入脉冲进行计数,如果输入脉冲的频率一定,那么记录脉冲的个数与所需的时间是一一对应的关么记录脉冲的个数与所需的时间是一一对应的关系。系。例如输入脉冲频率为例如输入脉冲频率为2MHz,那么计数,那么计数2 106 计时计时1秒。秒。因此,使用同一个芯片,既能计数,又能计时因此,使
8、用同一个芯片,既能计数,又能计时计时器计时器/计数器计数器本讲稿第八页,共四十页组成:组成:控制寄存器控制寄存器决定工作模式决定工作模式状态寄存器状态寄存器反应工作状态反应工作状态初值寄存器初值寄存器计数的初值计数的初值计数输出寄存器计数输出寄存器 CPU从中读当前计数值从中读当前计数值计数器计数器 执行计数操作,执行计数操作,CPU不能访问不能访问OUT控制寄存器控制寄存器初始值寄存器初始值寄存器计数器计数器计数输出寄存器计数输出寄存器状态寄存器状态寄存器CLKGATE本讲稿第九页,共四十页工作原理:工作原理:对对CLK信号进行减信号进行减1计数计数 首先,首先,CPU把控制字写入控制寄存器
9、,计数初始把控制字写入控制寄存器,计数初始值写入初值寄存器值写入初值寄存器 计数从初值开始,每当计数从初值开始,每当CLK信号出现一次,计信号出现一次,计数值减数值减1 当计数值减到当计数值减到0,从,从OUT端输出规定的信号端输出规定的信号 CLK信号出现时,计数器是否减信号出现时,计数器是否减1,由门控信,由门控信号号GATE控制控制本讲稿第十页,共四十页第二节第二节 可编程计数器可编程计数器/定时器定时器 8253 一一.8253的编程结构的编程结构本讲稿第十一页,共四十页本讲稿第十二页,共四十页1.数据总线缓冲器数据总线缓冲器8253与数据总线的接口部件,是与数据总线的接口部件,是8位
10、的三态双向缓冲器,位的三态双向缓冲器,CPU对对8253读写的数据,控制及状态信息读写的数据,控制及状态信息都通过这都通过这8条数条数据线传送,读写的内容包括:据线传送,读写的内容包括:CPU向向8253传送的确定传送的确定8253工作方式的控制字工作方式的控制字CPU向某一计数器装入计数初值向某一计数器装入计数初值CPU从某一计数器读出计数初值从某一计数器读出计数初值本讲稿第十三页,共四十页2.读/写逻辑电路 8253内部操作的控制电路,它从系统内部操作的控制电路,它从系统控制总线上接收控制信号,然后产生控制总线上接收控制信号,然后产生8253内部操作的各种控制内部操作的各种控制 信号。信号
11、。lCS片选信号片选信号lRD,WR读写控制信号读写控制信号lA1,A0接系统总线的接系统总线的A1,A0,用于选择,用于选择8253那的计数器那的计数器和控制寄存器和控制寄存器 本讲稿第十四页,共四十页8253输入信号与各功能的对应关系输入信号与各功能的对应关系。CS RD WR A1 A0 功能功能 0 1 0 0 0 对计数器0设置计数初值 0 1 0 0 1 对计数器1设置计数初值 0 1 0 1 0 对计数器2设置计数初值 0 1 0 1 1 设置控制字或给一个命令 0 0 1 0 0 从计数器0读出计数值 0 0 1 0 1 从计数器1读出计数值 0 0 1 1 0 从计数器2读出
12、计数值 本讲稿第十五页,共四十页3.计数器内部构成计数器内部构成 每个计数器内部都有三个每个计数器内部都有三个16位寄存器位寄存器CR、CE和和OL。CR计数初值寄存器计数初值寄存器 存放存放CPU写入的计数初值(也称时间常数)。写入的计数初值(也称时间常数)。CPU可以写,但不可以写,但不能读能读CR寄存器。寄存器。CPU向向CR写入计数初值后的第一个写入计数初值后的第一个CLK脉冲脉冲下降沿,下降沿,CR寄存器的内容被送到寄存器的内容被送到CE计数器单元内,随后计数器单元内,随后CE开开始工作。始工作。本讲稿第十六页,共四十页本讲稿第十七页,共四十页3.计数器内部构成计数器内部构成 每个计
13、数器内部都有三个每个计数器内部都有三个16位寄存器位寄存器CR、CE和和OL。CE计数执行部件计数执行部件接收接收CR送来的计数初值,在送来的计数初值,在GATE的控制下的控制下CLK进行减进行减1计数,计数,当计数终到时,该计数通道的当计数终到时,该计数通道的OUT引脚发出引脚发出OUT信号。信号。CPU不能不能访问访问CE寄存器。寄存器。本讲稿第十八页,共四十页3.计数器内部构成计数器内部构成 每个计数器内部都有三个每个计数器内部都有三个16位寄存器位寄存器CR、CE和和OL。OL输出锁存器输出锁存器用来锁存某一时刻用来锁存某一时刻CE中的计数值。由于中的计数值。由于8253的数据总线只有
14、的数据总线只有8 位,而位,而CE是是16位的,不可能在一个总线周期内将位的,不可能在一个总线周期内将CE的内容全的内容全部读入部读入CPU,因此用,因此用OL将不断变化的将不断变化的CE值锁存住,以便值锁存住,以便CPU读到正确的读到正确的CE值。值。CPU可随时用可随时用IN指令读出该寄存器的当前指令读出该寄存器的当前计数值,但不能写该寄存器。计数值,但不能写该寄存器。本讲稿第十九页,共四十页8253的引脚结构图的引脚结构图8253是是24引脚双列直插式引脚双列直插式芯片,它与芯片,它与CPU的接口引线除了的接口引线除了没有没有RESET引脚外,其他与引脚外,其他与8255相同。其中:相同
15、。其中:D7D0是数据线引脚是数据线引脚RD和和WD:读写控制引脚:读写控制引脚CS是片选信号。是片选信号。A1,A0是片内地址选择引脚。是片内地址选择引脚。8253的三个计数通道在结构的三个计数通道在结构上和功能上完全一样,每个通道上和功能上完全一样,每个通道均有两个输入引脚均有两个输入引脚CLK和和GATE,一个输出信号,一个输出信号引脚引脚OUT。本讲稿第二十页,共四十页二二.8253的编程的编程初始化初始化1)写入控制字)写入控制字2)按控制字要求写入计数初值)按控制字要求写入计数初值8253控制寄存器的格式如下控制寄存器的格式如下:D7 D6 D5 D4 D3 D2 D1 D0 SC
16、1 SC0 RW1 RW0 M2 M1 M0 BCD 本讲稿第二十一页,共四十页BCD位:设置计数格式位:设置计数格式 1:计数值为:计数值为BCD格式格式 0:计数值为二进制格式:计数值为二进制格式M2 M1 M0:模式选择模式选择 000:模式:模式0 001:模式:模式1 X10:模式模式2 X11:模式模式3 100:模式:模式4 101:模式:模式5RW1 RW0:读读/写指示标志写指示标志00 对计数器进行锁存操作,使当前计数值在输出锁存器中锁定,以对计数器进行锁存操作,使当前计数值在输出锁存器中锁定,以便读出便读出01 只读只读/写低写低8位字节位字节10只读只读/写高写高8位字
17、节位字节11先读先读/写低写低8位字节,再读位字节,再读/写高写高8位字节位字节SC1、SC0计数器选择。计数器选择。SC1SC0 含义含义00选计数器选计数器001选计数器选计数器110 选计数器选计数器211 无意义无意义D7 D6 D5 D4 D3 D2 D1 D0 SC1 SC0 RW1 RW0 M2 M1 M0 BCD 本讲稿第二十二页,共四十页例:设三个计数器的例:设三个计数器的CR/OL端口地址为端口地址为70H、71H、72H,控制寄存器端口地址,控制寄存器端口地址73H。计数器。计数器0,工作模式,工作模式2,CR/OL仅使用低仅使用低8位,初值为位,初值为100,计数值使用
18、二进制,计数值使用二进制MOV AL,14HOUT 73H,ALMOV AL,100OUT 70H,AL例:设三个计数器的例:设三个计数器的CR/OL端口地址为端口地址为70H、71H、72H,控制寄存器端口地址,控制寄存器端口地址73H。计数器。计数器1,工作模式,工作模式1,CR/OL使用使用16位,初值为位,初值为1234,计数值使用,计数值使用BCDMOV AL,73HOUT 73H,ALMOV AX,1234HOUT 71H,ALMOV AL,AHOUT 71H,AL本讲稿第二十三页,共四十页三三.8253工作模式工作模式 8253作为一个可编程计数器作为一个可编程计数器/定时器,可
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第十一 计数器 定时器 精选 文档
限制150内