第4章51单片机对时间的控制要点解析.ppt

  1. 1、本文档共33页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
定时工作方式2 这是定时/计数器1在工作方式2下的逻辑图,定时/计数器0同样也是如此。TH1作为常数缓冲器,当TL1计数溢出时,在置“1”溢出标志TF1的同时,还自动的将TH1中的初值送至TL1,使TL1从初值开始重新计数。 方式0和方式1用于循环重复定时或计数时,在每次计数器溢出后,计数器数据寄存器被清零。若要进行新一轮的计数,就得重新装入计数初值。这样一来不仅造成编程麻烦,而且影响定时精度。而方式2具有初值自动装入的功能,避免了这个缺点,可实现精确的定时。 方式2只是8位计数器,定时时间短、计数范围小。其定时时间为: (28-初值)×机器周期 若晶振频率为12MHz,则最长的定时时间为: (28-0)×1μs=256μs =0.256ms 实例功能设想 同时运用定时器0和定时器1。定时/计数器0用的是定时功能,运用定时器0制作一个高精度的信号发生器,产生200μs的方波信号。而定时/计数器1充当一个脉冲计数器的功能,用P0、P2端口电平指示器来显示脉冲个数。 (1)定时计数工作方式TMOD (2)定时器0计数初值设定 想让单片机P1.0输出周期为200μs的方波脉冲。则定时器0的定时时间为100μs。使用12M晶振,则机器周期为1μs。我们设计数初值为x,则: (28-X)×1μs =100μs X=156=9CH。则TH0和TL0都设定为9CH。 实例寄存器设定 (3)计数器1计数初值设定 在工作方式2之下,计数最大值为28=256, 这个计数值不是很大,所以我们将计数初值设定为0,让它从0开始计数,则TH1和TL1都设定为0。 (4)中断开关设置(IE) (5)中断优先级设置(IP) 定时工作方式3 定时/计数0在方式3时被拆成两个独立的8位计数器:TH0和TL0。 TL0使用定时/计数0的状态控制位C/T、GATE、TR0、INT0,它既可以工作在定时方式,也可以工作在计数方式。而TH0被固定为一个8位定时器(不能作外部计数模式),并使用定时器定时/计数1的状态控制位TR1,同时占用定时器T1的中断请求源TF1。此时,定时器TH0的启动或停止只受TR1控制。TR1=1时,启动TH0的计数;TR1=0时,停止TH0的计数。 实例规划 通过第3章的学习,我们知道51单片机只有两个外中断,在应用系统中可能会有外中断不够用的情况,这时候计数器往往能充当一个外中断角色。实现的方法非常的简单,将定时/计数器设置为计数模式,将计数初值设定为总计数值,这样再来一次脉冲信号,计数器就会溢出,继而进入中断。假设我们选用8位计数器,最大计数值为255,我们将计数初值就设置为255(FFH),如果此时计数器在运行过程中,一遇到一个脉冲信号,此时计数器马上就会溢出,跳转到中断服务程序处,在中断服务程序中,添加我们想要的处理程序,这样就是借计数中断之名产生外部中断之实。 当定时/计数0处于方式3时,定时/计数1仍可设置为方式0、方式1和方式2。 但由于TR1、TF1和T1的中断源都已被定时器T0(中的TH0)占用,所以定时器T1 仅有控制位C/T来决定其工作在定时方式或计数方式。当计数器计满溢出时,不能置位“TF1”,而只能将输出送往串口。所以,此时定时/计数1一般用作串口的波特率发生器。 实例电路图 实例大致流程 (1)定时计数工作方式TMOD 实例寄存器的设定 (2)TH0初值设定 想让P1.0端口输出周期为200μs的方波脉冲,则每隔100μs , P1.0端口电平翻转一次。则定时器0的定时时间为100μs。 使用12M晶振,则机器周期为1μs。设计数初值为X: (28-X)×1μs =100μs X=156=9CH。则TH0设定为9CH。 (3)TL0初值设定 计数器TL0想作为一个外中断,初值就必须为最大计数值,TL0为8位计数器,它的最大计数值为(28-1)=255=FFH,所以TL0就设置为0FFH。 (4)中断开关设置IE (5)中断优先权设定 IP 第五章 51单片机对时间的控制 1、软件定时 2、可编程定时 汇编语言可实现精确定时 1、晶振电路 图中X1表示一个晶体振荡器,我们单片机时钟的值就由它的选值决定。假设使用的振荡值为12MHZ那么它能产生的频率信号就为12MHZ。 单片机不能直接运用12MHZ的时钟信号,单片机内部晶振信号进行12分频,分频后的频率信号就为机器信号。假如用12M晶振的话,51单片机的时钟周器为: 1÷(12MHZ÷12)=1μs。如果晶振选择6M的话,机器周期就为2μs。 DELAYL: MOV R5,#255 LOO

文档评论(0)

三沙市的姑娘 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档