八章 接口技术.ppt

  1. 1、本文档共186页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理与测控接口技术;第八章 接口技术;本章教学目标;第一节 定时器/计数器;定时与计数;定时器的工作原理;定时方法;可编程定时/计数器 8253/8254;8253/8254外部特性及内部结构;8253/8254外部特性;2. 8253/8254与外设的信号(每个通道独立) CLK0~2(In):计数时钟输入, 计数脉冲; GATE0~2(In):门控信号, 禁止与启动T/C工作; OUT0~2(Out):计数器输出, 表示定时或计数已到。 ;8253/8254内部结构;计数通道内部逻辑框图;8253/8254外部特性及内部结构;工作方式控制字;写操作规则;例:读计数器1的当前计数值 timer equ 40h mov al, ; 01计数器1, 00计数器1锁存, 000方式0, 二进计数 out timer + 3, al ; 写入控制字 mov al, out timer + 3, al ; 写入控制字 in al, timer + 1 ; 读计数器1低字节 mov bl, al in al, timer + 1 ; 读计数器1高字节 mov bh, al;工作方式控制字;8253/8254工作方式;20;方式0;方式0;方式0 – GATE门控信号;方式0 –改变计数初值;方式0 – 如何重复运行;方式0;称为可重复触发的单稳态触发器。负脉冲宽度可控制。 (硬件触发方式,即GATE门控信号) ;写入控制字后, OUT输出为“1”,即高电平; 写入计数初值后,计数器不会立即开始计数; GATE的 后,在下一个CLK的 ,置计数初值到CE,OUT输出为“0”,开始减1计数; 计数为“0”后,OUT输出为“1”,高电平; 输出负脉冲的宽度为计数初值N个CLK脉冲周期; 当计数到 “0”后,可再次由GATE上升沿触发,输出同样宽度的负脉冲,无需再次写入计数初值; GATE信号:该单稳电路的外部硬件触发信号 计数初值:暂态时间常数;方式1 – GATE门控信号;方式1 –改变计数初值; 在方式1,当CPU输出控制字后(WR的上升沿),OUT输出变为高电平(若原为高电平,则保持为高电平); 在CPU写入计数初值后,计数器并不开始计数,直至门控信号GATE上升沿(即门控触发信号)出现,并在其下一个CLK脉冲的下降沿,CR的内容送入CE,同时使OUT输出变为低电平,然后开始对随后的CLK脉冲进行减1计数。 在计数过程中,OUT一直维持为低电平,直至计数到“0” 时,OUT输出变为高电平。因此,由于GATE上升沿的触发,使OUT输出端产生一个宽度为N个CLK周期的负脉冲。 此后,若再次由GATE上升沿触发,则输出再次产生一个同样宽度的负脉冲。;称为可重复触发的单稳态触发器。负脉冲宽度可控制。 (硬件触发方式,即GATE门控信号) ;方式2 – 波特率发生器;方式2 – 波特率发生器;计数过程可由GATE信号控制。当GATE信号变低时,立即暂停当前计数;当GATE信号上升沿,CE重新赋值,开始计数;GATE高电平使能计数。;方式2 – 改变计数初值;方式3 – 方波发生器;方式3 – 方波发生器;计数初值为奇数,若N为奇数,则OUT输出将有(N+1)/2个CLK周期为高电平,(N-1)/2个CLK周期为低电平,输出为基本对称的矩形波,其周期也为N个CLK周期。;方式3 – GATE门控信号;方式4 – 软件触发;方式4 – GATE门控信号;方式4 – 改变计数初值;方式5 – 硬件触发;方式5 – GATE门控信号;方式5 – 改变计数初值;各种工作方式输出波形比较;各工作方式比较;8253/8254应用电路;解: 由电路图知,8254工作于方式2(时钟发生器); 2. 计数初值CR=1ms/500ns=2000; 初始化程序段如下: mov dx, 243h ;注意用dx存放I/O口地址 mov al, 01 11 010 0b ; (或74h) out dx, al ; 注意用out,不要用mov指令 sub dx, 2 ; 或用 mov dx, 241h mov ax, 2000 out dx, al mov al,

文档评论(0)

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

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

1亿VIP精品文档

相关文档