




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、学习可编程接口芯片的方法,可编程接口芯片从以下几个方面掌握: 芯片的功能 芯片的工作方式 芯片的编程方法 与CPU如何连接 完成各种实际应用,第八章 可编程计数器/定时器,8253及其应用,了解8253的功能 熟悉8253的工作方式 掌握8253的编程方法 掌握每种工作方式下GATE对OUT的影响 学会使用8253计数和定时功能,(P304),第八章,计数器/定时器:,通常按计数的实现方法可将计数器操作分为增量计数器和减量计数器两种。增量计数器是指当计数脉冲(事件)到来后,计数的计数值加“1”;减量计数器反之。,增量计数器常用于对事件的累计,而减量计数常用于限量计数。增量计数关心的是当前计数的
2、量,减量计数关心的是计数终到的时刻。,在微机系统或微机应用系统,特别是控制系统中,经常有计数和计时的要求。如汽车里程表 的公里计数,电话通话时间计时等。这些应用在计算机中的处理方法不外乎两种:软件方法和硬件方法。,第八章,可编程硬件定时:采用可编程的计数/定时芯片完成。定时值及其可调整范围,都可以通过软件编程确定和改变,功能灵活使用方便。(软硬件结合),可编程计数器/定时器Intel 8253就是这种芯片。,硬件定时:采用电子器件构成定时或延时电路。电路触发后延时时间的长短由电路中的定时元件的RC值(RC时间常数)所决定,这种定时方法的缺点是,要改变定时间隔必须改变电路元件,不灵活。(纯硬件)
3、,软件定时:就是根据所需要的时间常数来设计一个延迟子程序,这样作的优点是节省硬件,但耗费CPU的资源较多,降低了CPU效率,且编写软件略显麻烦,通常延迟时间较小且重复次数有限的情况下,使用该方法。,8.1 8253的工作原理(P304),计数器/定时器的功能:,对外部事件发生次数进行计数; 产生计算机系统需要的定时信号。,计数和计时本质上是相同的,它们都是对一个输入脉冲进行计数。计数器的输入信号可以是随机信号,定时器的输入信号要求具有固定周期。,计数器/定时器需要做到三个基本功能: 可以设定工作方式、计数值 可以控制何时开始计数,还可以暂停或重新写入计数值 计数/计时结束时要有提示,如果输入脉
4、冲的频率一定,那么记录脉冲的个数与所需的时间是一一对应的关系。例如输入脉冲频率为2MHz,那么计数2106 计时1秒。,8253的工作原理,一个计数器/定时器的组成:,控制字寄存器决定工作模式(8位) 状态寄存器反映工作状态 初值寄存器计数的初值(16位) 计数输出寄存器当前计数值(16位)。 计数器执行计数操作,CPU不能访问。(16位),输入计数器脉冲,门控信号输入端,输出端,8253的工作原理,计数器/定时器的组成:,首先,CPU把控制字写入控制寄存器,计数初值写入初值寄存器;,计数从初值开始,每当CLK脉冲信号出现一次,计数值在门控信号GATE控制下决定是否减1;,当计数值减到0,从O
5、UT端输出规定的信号;,CLK信号出现时,计数器是否减1,由门控信号GATE控制。,8253的工作原理,一、8253A的内部结构和引脚信号(P305),8253的内部结构图,8253的工作原理,一、8253A的内部结构和引脚信号,8253的三个计数通道在结构上和功能上完全一样,每个通道均有两个输入引脚CLK和GATE,一个输出信号 引脚OUT。,由CPU输入的控制信号CS 、RD和WR 与A1,A0组合实现的功能见教材P322表8-1。,8253的工作原理,一、8253A的内部结构和引脚信号,8253输入信号组合的功能表,8253的工作原理,一、8253A的内部结构和引脚信号,8253作为定时
6、器使用时,其定时时间计算公式为:,例:在某系统中,8253的CLK上的计数脉冲频率为0.5MHz,8253计数器的初值是n=500。,定时时间 = 时钟脉冲周期tclk预置的计数初值n,注意:8253 外部输入引脚CLKi上的时钟脉冲频率不能大于2MHz。,0.5MHz的时钟脉冲周期为T=2s,则,定时时间 = 2s 500=1ms,8253的工作原理,一、8253A的内部结构和引脚信号,在对8253进行编程时,由CPU向它写控制字,来选定计数器通道,并规定所选计数器的工作方式。控制字格式:,BCD:00009999H; 二进制:0000FFFFH; BCD: 1200H=1200; 二进制:
7、1200H=4608,计数初值为0000时,如何计数?,初值写进去之后,门控信号允许时,计数过程是: 1、初值放入计数当前值寄存器 2、CLK到来一个脉冲当前值寄存器减1 3、判断当前值是否为0,如果不为0,返回2,否则当前一次计数结束。,BCD:初值可以为00009999H; 当初值为0时,先减1得9999H,到最后减为0,进行了10000次计数,所以初值0相当于10000 二进制:0000FFFFH; 初值0000H相当于65536,CLK确定的情况下,一个定时器的最长定时时间=?对应的计数初值是?,8253的工作原理,二、 8253的初始化步骤和门控信号的功能,1. 初始化步骤:,(1)
8、 写入控制字; (2) 按控制字要求写入计数初值。,计数初值N=fCLK/fOUT =TOUT/TCLK,例(P309):8253的地址为3F0H、3F2H、3F4H、3F6H 要求8253的计数器0工作于方式3,BCD码计数,计数器初值n=1234H, 初始化程序为:,MOVAL, 37H MOVDX, 3F6H OUTDX, AL,8253的工作原理,二、 8253的初始化步骤和门控信号的功能,2. 门控信号控制功能:(P310),门控信号GATE的控制功能如教材P310表8-2所示,由表可知:,方式0,4时:门控信号为电平触发 方式1,5时:门控信号为上升沿触发 方式2,3时:门控信号为
9、电平或上升沿触发,三、 8253的工作方式 (P310),工作方式决定以下内容:,1)门控信号的影响,高电平允许:当GATE=0,即使出现CLK,也不计数 方式0,2,3,4 上升沿允许(上升沿触发)方式1,5,2,3,8253的工作原理,三、 8253的工作方式,写入控制字后, OUT的状态 计数过程中, OUT的状态 计数终了, OUT的状态,3)计数操作可否重复,不可重复模式0,4 自动重复模式2,3 条件重复模式1,5,8253的工作原理,特点:,CLK,WR,CW,OUT,N=4,4,3,2,1,GATE,0,可作为INTR信号,计数器只计数一遍;,计数过程中,可由门控信号控制暂停计
10、数;,在计数过程中可改变计数值。写入新值后,计数器按新值重新开始计数,8253的工作原理,特点:,若计数值为N,则输出脉冲宽度为N*CLK;,计数到0,可由GATE上升沿再次触发,输出一个脉冲,不需重新赋值;,若计数过程中,门控信号再次触发,计数器在触发信号的下一个CLK重新开始计数;,CLK,WR,CW,OUT,N=3,3,2,1,GATE,3,若计数过程中,CPU改变计数值,但计数过程不受影响,再次触发后,按新值重新计数。,8253的工作原理,特点:,计数器能连续工作;,计数过程中,若GATE变低,计数器暂停工作,GATE变高后,计数器重新取出初值,开始计数;,计数过程中,若写入新的初值,
11、对当前的计数过程无影响,但下一个计数过程,以新的初值开始计数;,CLK,WR,CW,OUT,N=4,4,3,2,1,GATE,4,3,2,1,8253的工作原理,特点:,同方式2的三个特点,不同的是:,初值为偶数时,每来一个脉冲,计数值减2 初值为奇数时,第一个CLK使计数器减“1”,其后每一个CLK使计数器减“2”,到“0”后,改变输出状态,同时重新装入计数值。接着第一个CLK使计数值减“3”,以后每个CLK使计数值减“2”,直到计数值为“0”,重复上述过程。,CLK,WR,CW,OUT,N=4,4,2,4,2,GATE,4,2,4,2,8253的工作原理,N值写入后,如Gate为高,则下一
12、个CLK开始计数,相当于软件启动;,GATE=“1”,允许计数,GATE=“0”,禁止计数,因此,要做到软件启动,必须使GATE=“1”;,CLK,WR,CW,N=4,4,3,2,1,GATE,0,写一次初值,只计一次;计到0时,产生低电平维持一个周期后变高,计数过程中改变计数值,按新值重新计数到0;,8253的工作原理,N值写入后,计数器并不计数,当GATE的上升沿出现时,取出初值开始计数;,计数过程中改变计数值,若没有GATE的触发,不影响计数过程,当计数到“0”后,若有GATE触发,则按新的计数值计数.,CLK,WR,CW,N=5,4,3,2,1,GATE,0,5,5,5,8253的工作
13、原理,三、 8253的工作方式,6种工作方式主要区别:,OUT输出波形不同。 启动计数器的触发方式不同。 计数过程中门控信号GATE对计数操作的影响不同。 有的工作方式具备“初值自动重装”的功能。初值自动重装的功能是:当计数值减到规定的数值(通常为0)后,计数初值将会自动地重新装入计数器。,8253的工作原理,方式0:计数初值N写入CR后,当GATE为高电平时,经过N个时钟脉冲之后OUT由0到1跳变 每写一次初值仅仅计数一次,方式1:计数初值N写入CR后,由GATE上升沿触发,OUT输出一个负的单脉冲 单脉冲宽度T=N TCLK 不必每次都写初值。,方式2:计数初值N写入CR后,当GATE为高
14、电平时, 输入端每输入N个时钟脉冲,在输出端出现一个负的时钟脉冲 N分频器。 自动重装入初值。,8253的工作原理,方式4:计数初值N写入CR后, 触发计数(此时GATE必须为高电平),经N个时钟脉冲,输出端产生选通负脉冲信号, 宽度= 1个CLK 只计一次,方式3:计数初值N写入CR后,当GATE为高电平时,n为偶数时OUT输出一系列方波 (N分频器) 。N值为奇数时,输出矩形波,高低电平时间不同(差一个时钟周期) 。自动重装入初值。,方式5:计数初值N写入CR后,硬触发(GATE输入一个正脉冲)后,经N个时钟脉冲, 输出端产生选通负脉冲信号,宽度= CLK不必每次都写初值,8.2 8253
15、的应用举例 (P315),实际应用例子的解题思路: 确定端口地址确定计数初值-确定工作方式确定电路图编程(写入控制字、初值) 8253的编程只需要初始化。初始化之后,芯片自动工作,无需程序干扰 注意:用到多个通道时,对每个通道都要依次写控制字,写初值。,8255的工作原理,接口芯片地址,A1,A1,A0,A0,8位,8088,8253,端口地址:,A1 A0,0 0,0 1,1 0,1 1,X0H,X1H,X2H,X3H,8086,8253,低8位,A2,A1,A1,A0,A2 A1,A0,0 0,0 1,1 0,1 1,0,0,0,0,端口地址:,X0H,X2H,X4H,X6H,8253的应
16、用举例,例1:,在某个以8086为CPU的系统中使用了一块8253芯片,通道的基地址为310H,所用的时钟脉冲频率为1MHz。要求3个计数通道分别完成以下功能: 1)计数器0工作于方式3,输出频率为2KHz的方波; 2)计数器1产生宽度为480 s的单脉冲; 3)计数器2用硬件方式触发,输出单脉冲,时间常 数为26。,通道的地址分别为310H, 312H, 314H, 316H。,1)计数器0:方式3,OUT0输出方波 N0= fCLK/fOUT = 1MHz /2KHz =106/2 103 = 500,2)计数器1:方式1,OUT1输出单脉冲 N1= TOUT/TCLK = 480 s /
17、 1 s = 480,8253的应用举例,程序如下页,见教材P316。,A9A0=1100010XX0 310H316H,;通道0方式字及初值 MOV DX,316H MOV AL,00110111B OUT DX,AL MOV DX,310H MOV AL,00H OUT DX,AL MOV AL,05H ;通道1方式字及初值 MOV DX,316H MOV AL,01110011B OUT DX,AL,MOV DX,312H MOV AL,80H OUT DX,AL MOV AL,04H OUT DX,AL ;通道2的方式字及初值 MOV DX,316H MOV AL,10011011B
18、OUT DX,AL MOV DX,314H MOV AL,26H OUT DX,AL,8.2 8253的应用举例 (P315),例2:,时钟脉冲以2MHz输入8253,实现每5秒定时中断(设8253端口地址40H46H),分析:按照公式计数初值n=Tout/Tclk=107,而初值计数器只有16位,最大计数次数为65536,所以一个计数器不行,,所以需要两个计数器串联,一个计数器的输出作为另一个计数器的输入。连接如图:,确定端口地址确定计数初值确定电路图确定工作方式编程(写入控制字、初值),级联时每个计数器初值的计算,N0=Tout0/Tclk0=Tout0/Tout1=Tout0/(N1*T
19、clk1) N0*N1=Tout0/Tclk1= 107 采取级联后,要使得级联的两个计数器的计数初值的乘积为107,所以两个计数器的初值N1、N2可以多种取值,只要N1*N2= 107即可。 可以取N1=10000,N2=1000,首先,选择工作方式,要实现每5秒,即自动循环计数,那么方式 0:只计数一次,不符合 1:每次要用上升沿才能触发计数,不行 2:只要Gate为高电平就可以自动循环计数,满足 3:类似方式2,也满足 4:Gate为高电平时,计数一次 5:必须用Gate上升沿才能触发计数,同1,8253的应用举例,例2:,计数器1:方式2,OUT1每5ms输出一个脉冲,初值 N1=定时时间/Tc=5ms/0.5 s=10000,计数器0:方式2,OUT0 每5s输出一个脉冲,初值 N2=定时时间/Tc=5s/5ms=1000,计算初值:OUT1每5s输出一个脉冲,初值 N=定时时间/Tclk=5s/0.5 s=107 65535,8253的应用举例,START: MOV AL, 01110100B ; 定时器1,16位,方式2, MOV DX, 46H ; 二进制。 OUT DX, AL ; MOV AX, 10000 MOV DX, 42H OUT DX, A
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 生物化学(第4版)课件 第7章 脂质代谢
- 超高性能混凝土框架节点抗震性能研究
- 儿童健康检查培训
- 卢桑斯的权变管理理论
- 黄疸的问诊要点与护理诊断
- 颈部疾病病人护理课件
- 我的健康早餐分享
- 幼儿春游欣赏活动方案设计
- 健康素养大讲堂
- 预防网络诈骗班会课件
- 美国技术服务合同英文翻译
- 企业数字化生存指南
- 医院医疗器械临床试验项目资料备案清单
- YDT 5206-2023宽带光纤接入工程技术规范
- 新疆警察学院面试问题及答案
- 小学三到六年级全册单词默写(素材)-2023-2024学年译林版(三起)小学英语
- 铁岭市高校毕业生“三支一扶”计划招募笔试真题2022
- 天然气泄漏事故演练方案及评估
- 《养老机构认知障碍照护专区设置与服务规范》
- 妇科炎症健康教育课件
- 儿科护理学(高职)全套教学课件
评论
0/150
提交评论