版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第6章常用输入输出接口芯片应用6.4计数器/定时器8253教学重点可编程计数器/定时器的原理8253的工作方式和编程8253的应用教学内容1概述2可编程计数器/定时器的工作原理3可编程计数器/定时器82531概述定时器/计数器的应用举例:定时信号的获得: (1)软件方法 使用延迟子程序 MOVCX,1000
L1: LOOPL1
(2)硬件方法 使用计数器/定时器
2可编程计数器/定时器的工作原理定时器由数字电路中的计数电路构成,通过记录高精度晶振脉冲信号的个数,输出准确的时间间隔。计数值=定时时间/时钟脉冲周期计数电路如果记录外设提供的具有一定随机性的脉冲信号时,它主要反映脉冲的个数(进而获知外设的某种状态),又称为计数器。定时器和计数器当作为计数器时:
设置计数初值后,计数执行单元随着时钟CLK开始减1计数,减到零时,从OUT输出端输出一个结束信号;当作为定时器时:设置好定时常数后,计数执行单元随着时钟CLK开始减1计数,减到零时,从OUT输出端输出信号,并按定时常数重复进行,这样不断输出定时间隔的信号。高8位低8位GATECLKOUT输出锁存器OL计数初值寄存器CR高8位低8位计数执行部件CE高8位低8位计数器/定时器结构示意图计数器/定时器的用处①在多任务的分时系统中用来作为中断信号实现程序的切换;②可以向I/O设备输出精确的定时信号;③作为可编程的波特率发生器;④实现时间延迟。3可编程计数器/定时器8253①.8253的内部结构②.8253的引脚分配③.8253的工作模式④.8253的控制寄存器的格式⑤.8253的应用举例①.8253的内部结构数据总线缓冲器是一个三态、双向8位缓冲器,用于将8253与系统数据总线D0~D7相连。CPU通过数据总线缓冲器向8253写入数据和命令,或从数据总线缓冲器读取数据和状态信息。
数据总线缓冲器有三个基本功能:通过编程向8253写入工作方式命令字;向计数寄存器装入计数值;读出计数值。数据总线缓冲器这是8253内部操作的控制部分。按CPU发来的读、写信号和地址信号,选择读出或写入寄存器,并且确定数据传输的方向,即是读出还是写入。读/写逻辑电路控制字寄存器在8253的初始化编程时,由CPU写入控制字以决定通道的工作方式。此寄存器只能写入而不能读出。这是三个独立的定时/计数通道,每个通道的结构完全相同,每个通道都有一个16位的可预置数值的减法计数器,还有一个对应的锁存寄存器构成。在编程控制下可以把预置的数值锁存到锁存寄存器内。计数器#0、#1、#2在工作过程中,计数器的值不断递减,而锁存寄存器的内容不变。
计数器内容减为0时,还可控制锁存寄存器自动将其数值填入计数器内。还可用工作方式字控制计数器将其当前数值锁存到锁存寄存器内,以便读出当前计数值。每个计数器都有六种工作方式。2.8253的引脚分配8253的内部端口地址引脚A1、A0计数器的三个引脚CLK时钟输入信号——计数器对该引脚输入的脉冲进行计数,在计数过程中,此引脚上每输入一个时钟信号(下降沿),计数器的计数值减1。8253的基本工作方式是对CLK端输入的脉冲进行计数,CLK端输入的脉冲可以是任何脉冲源提供的脉冲(只要它的周期不小于380ns即可)。GATE门控输入信号——通过外部控制计数器工作,可分成电平控制和上升沿控制两种类型,类型由工作方式决定。OUT计数器输出信号——当一次计数过程结束(计数值减为0),OUT引脚上将产生一个输出信号。基本规则①.控制字写入计数器时,所有的控制逻辑电路立即复位,输出端OUT为初始状态(高电平或低电平);②.初值写入后,要经过1个时钟CLK的上升沿和1个下降沿后,计数执行部件才开始计数;3.8253的工作模式③.在CLK的上升沿时,计数器对门控信号GATE进行采样,来决定工作状态(计数、触发、停止、重新置初值);④.在CLK的下降沿时,计数器执行部件从初值开始作减1计数;其中0是最大初值,1是最小初值。注意:启动方式(软件启动、硬件启动);GATE信号的作用,可以启动计数的有效GATE信号(高电平、上升沿),GATE信号的变化导致计数发生的变化;OUT输出波形;计数期间向计数器写入新的计数值,计数的变化;是否自动重新装入
CWN=4WRCLKGATEOUTNN43210FF装控制字装初值计数开始计数结束
作用是用户可在设定时间上产生中断信号模式0:计数结束产生中断模式0的工作特点:①门控电路GATE信号必须为1,计数器才能计数;②计数时通道输出端OUT一直为0;③通道计数器计数到0后,OUT由0到1,同时计数器停止工作;作用是输出一个用户事先设定宽度的脉冲,脉冲宽度PW=NTCLK模式1:可编程的单稳态触发器模式1的工作特点:①门控电路GATE是触发信号,上升沿有效,即开始计数是由GATE的上升沿触发的;②触发后,通道计数器开始计数,输出端OUT由高变低;③计数器计数到0,OUT再由低变高。工作模式2:分频器CWN=3NN3213213213WRCLKGATEOUT作用是把输入信号分频后以脉冲的形式输出,而分频系数就是用户事先对通道计数器写入的初始计数值。模式2的工作特点:①门控电路GATE信号必须为1,计数器才能对CLK端上的脉冲进行计数;②当计数器计数到1时,输出端由高变低,再经过一个CLK周期,即计数器计数到0时,输出端OUT又跳变为高;③通道计数器计数到0后,自动重新装入计数初值,实现循环计数;工作模式3:方波发生器说明:特点与方式2类似,主要区别:输出方波,其占空比q为①当N为偶数时,q=0.5;②当N为奇数时,q=(N+1)/2N。
CWN=4
NN43214321432
WRCLKGATEOUT模式3的工作特点:①门控电路GATE信号必须为1,计数器才能对CLK端上的脉冲进行计数;②当计数器计数到一半时,输出端由高变低,计数器计数到0时,输出端OUT又跳变为高;③通道计数器计数到0后,自动重新装入计数初值,实现循环计数;模式4:软件触发的选通信号发生器
CWN=3
NN3210FFFE3210FF
N=3WRCLKGATEOUT作用是CPU通过指令触发一个选通信号给外设,选通信号在触发后设定时间点上触发。模式4的工作特点:①门控电路GATE信号必须为1,计数器才能计数;②当计数器计数到0后,需要重新装入计数值。模式5:硬件触发的选通信号发生器
CWN=3
NN3210FFFE3210FFWRCLKGATEOUT作用是外部通过一个有效沿触发信号,启动一个选通信号给外设,选通信号在触发后设定时间点上发出。模式5的工作特点:①门控电路GATE信号为上升沿触发,计数器才能计数;②计数时通道输出端OUT一直为1;③通道计数器计数到0后,OUT由1到0,同时计数器停止工作;8253工作方式小结①.方式2、4、5的输出波形是相同的,都是宽度为一个CLK周期的负脉冲。但方式2是连续工作,方式4由软件(设置计数值)触发启动方式5由门控脉冲触发启动②.写入计数值后才能开始计数方式0、2、3、4在写入计数值后,计数过程就开始了方式1、5需要外部触发启动,才开始计数③.6种方式中只有方式2、3是连续计数,其他4种方式都是一次计数,要继续工作需要重新启动,方式0、4由写入计数值(软件)启动,方式1、5要由外部信号(硬件)启动。4.8253的控制寄存器的格式00计数器001计数器110计数器211不用00计数器锁存命令01只读写低字节10只读写高字节11先读写低字节后读写高字节(读写16位)000模式0001模式1×10模式2×11模式3100模式4101模式50二进制1BCD计数值写入计数器各自的I/O地址计数值范围选择二进制时计数值范围:0000H~0FFFFH0000H是最大值,代表65536选择十进制(BCD码)计数值范围:0000~99990000代表最大值10000设置控制字命令设置初始值命令锁存命令读出命令写入命令1.初始化命令2.读取计数值命令8253的编程命令初始化命令(1)对计数器设置初值前必须先写入控制字,用来选择计数器、设定工作模式和计数格式;(2)设置初值命令用来给出计数的初始值,初值可以是8位,也可以是16位;计数初值为8位,则控制字中的RW1、RW0应取01,初值只写入CR的低8位,高8位会自动置0;若是16位初值,而低8位是0,则RW1、RW0应取10,初值高8位写入CR的高8位,CR的低8位会自动置0;若是一般16位初值,则RW1、RW0应取11,应分两次写入初值,先写低8位、再写入高8位(此顺序不能反)计数初始值写入对应计数器的计数初值寄存器;设置计数初始值的说明单个计数器初始化写模式控制字写计数低字节写计数高字节写模式控制字(计数器0)写模式控制字(计数器1)写模式控制字(计数器2)写计数低字节(计数器0)写计数高字节(计数器0)写计数低字节(计数器1)写计数高字节(计数器1)写计数低字节(计数器2)写计数高字节(计数器2)多个计数器初始化初始化流程先写入工作模式控制字,接着写入计数初始值计数器的顺序是任意的,不必一定按照计数器0、l、2的顺序初始化;可先写所有计数器的工作模式控制字,再装入各计数器的计数值(但先控制字再计数值的顺序不能错);计数值先写低再写高的顺序不能错;其他顺序无关紧要初始化流程的注意问题例1对8253计数器1编程,让其工作在方式2,计数值是二进制的2000H。(思考题)计数器1二进制数方式2先写低8位,后写高8位
控制字为:01
11
010
0B=74H设端口地址为120H~123H,则初始化程序段为:
MOVAL,74H;控制字MOVDX,123H;控制字寄存器地址OUTDX,ALMOVDX,121H;计数器1地址MOVAL,00H;低8位字节送ALOUTDX,AL;输出到计数器MOVAL,20H;高8位字节送ALOUTDX,AL;输出到计数器例2
设8253的端口地址为8030~8036H(偶地址),要求设定计数器0的工作在模式0下,采用二进制计数方式,计数初值为1000;计数器1的工作在模式2下,采用BCD码计数方式,计数初值为1000;试写出8253初始化程序。MOVDX,8036HMOV AL,30HOUTDX,ALMOVDX,8030HMOV AL,0E8HOUT DX,ALMOV AL,03HOUT DX,ALMOVDX,8036HMOV AL,
75HOUTDX,ALMOVDX,
8032HMOV AL,
00HOUT DX,ALMOV AL,10HOUT DX,AL初始化程序读到的是执行输入指令瞬间计数器的现行值。16位计数值要分两次读至CPU,故必须将数据锁存。有两种办法:利用外加控制信号GATE使计数器暂停计数,然后按照工作方式控制字中RL1RL0的规定读取规定字节读取计数值命令
CPU向8253发出锁存命令字(SC1SC0)锁存计数器的当前计数值(当前计数值锁存在输出锁存器,而减1计数器可以继续计数),再读取输出锁存器的计数值。当CPU读取了规定的字节数后,输出锁存器自动解除锁存状态,其值又跟随计数器而变化。MOVDX,8036HMOV AL,80HOUT DX,ALMOVDX,8034HINAL,DXMOV CL,ALINAL,DXMOV CH,AL例38253的端口地址为8030~8036H,要求将计数器2的当前计数值读出并送到CX中。例:现有一个高精密晶体振荡电路,输出信号是脉冲信号,频率为1MHz。要求利用8253做一个秒信号发生器,其输出接一发光二极管,以0.5秒点亮,0.5秒熄灭的方式闪烁指示。设8253的通道地址为80H~86H(偶地址)。5.8253的应用举例确定分频系数
经过分析可知:要求用8253做一个分频电路,而且其输出应该是方波,否则二极管不可能等间隔闪烁指示,则分频系数为:分析步骤由于8253一个通道最大的计数值是65536,而对于N=1000000这样一个数,一个通道显然是不可能完成上述分频要求,故本题采用了如图所示的通道计数器级联的方法来实现分频系数超过65536的分频要求。分析电路图可知:通道0首先将1MHz信号1000分频,产生1KHz信号;通道1再把1KHz信号1000分频,得到1Hz的方波信号来控制二极管的输出。2.确定通道0和通道1的工作方式
经过分析可知:通道1要输出方波信号推动发光二极管,所以通道1应选工作方式3;对于通道0,它只要能起分频作用就行,对输出波形不作要求,所以方式2和方式3都可以选用。3.确定控制字①通道0的控制字为00110101B,即16位读写方式,BCD码计数;②通道1的控制字为01110110B,即16位读写方式,二进制码计数;MOV AL,00110101B(35H)OUT 86H,ALMOV AL,00HOUT 80H,ALMOV AL,10HOUT 80H,AL4.编写子程序MOV AL,01110110B(76H)OUT 86H,ALMOV AL,0E8HOUT 82H,ALM
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 辽宁现代服务职业技术学院《生物学教学艺术与教学设计》2023-2024学年第一学期期末试卷
- 兰州工商学院《半导体器件制造及测试技术》2023-2024学年第一学期期末试卷
- 吉林艺术学院《结构稳定》2023-2024学年第一学期期末试卷
- 湖南税务高等专科学校《风景区规划与设计》2023-2024学年第一学期期末试卷
- 湖南电子科技职业学院《城市修建性详细规划》2023-2024学年第一学期期末试卷
- 黑龙江生态工程职业学院《园林植物生物技术》2023-2024学年第一学期期末试卷
- 重庆艺术工程职业学院《影视动画制作》2023-2024学年第一学期期末试卷
- 重庆机电职业技术大学《机器学习与模式识别II(双语)》2023-2024学年第一学期期末试卷
- 中央司法警官学院《建筑空间生活》2023-2024学年第一学期期末试卷
- 浙江农林大学《社区管理与服务》2023-2024学年第一学期期末试卷
- Unit 3 We should obey the rules. Lesson15(说课稿)-2023-2024学年人教精通版英语五年级下册
- 绵阳市高中2022级(2025届)高三第二次诊断性考试(二诊)语文试卷(含答案)
- 2024年聊城市东昌府区中医院招聘备案制工作人员考试真题
- 2025年极兔速递有限公司招聘笔试参考题库含答案解析
- 一般固废处理流程
- 《健康体检知识》课件
- 《AIGC应用实战(慕课版)》-课程标准
- 政府机关办公用品配送方案
- 永威置业项目交付前风险排查表
- 《储能材料与器件》课程教学大纲(新能源材料与器件专业)
- 人力资源许可证制度(服务流程、服务协议、收费标准、信息发布审查和投诉处理)
评论
0/150
提交评论