网站大量收购独家精品文档,联系QQ:2885784924

单片机原理及应用 教学课件 作者 谢辉 主编 黄滔李焱 副主编 第4单元P89C5x单片机的中断系统及定时器计数器.ppt

单片机原理及应用 教学课件 作者 谢辉 主编 黄滔李焱 副主编 第4单元P89C5x单片机的中断系统及定时器计数器.ppt

  1. 1、本文档共112页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
尚辅网 尚辅网 尚辅网 如果对T2MOD设置时,DCEN=1,则T2是向上/向下计数,方向就由T2EX来控制。当T2EX=1时,定时器T2向上计数,计数到FFFFH后溢出并置位TF2,定时器T2的溢出将使RCAP2L和RCAP2H中的值作为重新装载值放入TL2和TH2;当T2EX=0时,将使T2向下计数,当TL2和TH2计数到等于RCAP2L和RCAP2H里面预设的值时,定时器产生下溢。置位TF2,并将FFFFH 重新装入TL2和TH2。 按这样的工作方式,上面的程序段修改为向下计数。程序如下: 尚辅网 START: MOV T2MOD,#01H ;DECN=1,设置向上/向下计数 MOV T2CON,#0AH ;设置T2控制寄存器的值 CLR P1.1 ;T2EX=0,T2向下计数 CLR P1.7 ;P1.7输出低电平 MOV TH2,#0FFH MOV TL2,#0FFH ;设置T2从FFFFH向下计数 MOV RCAP2H, #0FFH ;计数初值写入RCAP2H中 MOV RCAP2L,#38H ;计数初值写入RCAP2L中 SETB TR2 ;启动T2进行计数 WAIT0: JNB TF2, WAIT0 ;是否计满200个脉冲,没有计满一直等待 BEGIN: CLP P1.7 ;P1.7引脚取反,就能实现一次脉冲变换 SJMP WAIT0 ;T2自动重装,重复操作 END 尚辅网 3、波特率发生器方式 对寄存器T2CON中的TCLK和RCLK设置,可以从T1或T2中得到串行口传送和接收波特率。当TCLK=0时定时器T1作为串行口传送波特率发生器;当TCLK=1时,T2作为串行口传送波特率发生器。同理,RCLK对串行口接收波特率有同样的效果。通过对TCLK和RCLK的设置,能得到不同的接收和传送 (一个通过T1产生另一个通过T2产生)。如表4-11所示。 尚辅网 TCLK RCLK 不同的串行口波特率 0 0 发送/接受均由T1产生 1 1 发送/接受均由T2产生 0 1 发送由T1产生,接受均由T2产生 1 0 发送由T2产生,接受均由T1产生 表4-11 通过对TCLK和RCLK设置得到不同的串行口波特率 尚辅网 T2工作在波特率发生器方式时,与自动重装载方式相似。当TH2溢出时,T2(TH1、TL2)重新装载来自RCAP2H、RCAP2L的16位的值(程序预先设置)。 T2工作在波特率发生器方式的结构如图4-17所示。 图4-17 T2工作在波特率发生器方式的结构 尚辅网 T2作为波特率发生器,仅当寄存器T2CON中的RCLK和(或)TCLK=1时,定时器T2作为波特率发生器才有效。 TH2溢出并不置位TF2,也不产生中断。这样,当T2作为波特率发生器时,T2中断不必被禁止。如果EXEN2(T2外部允许标志)=1,在T2EX引脚的电平由1变0的转换会使EXF2(T2外部标志位)=1,但并不导致(TH2,TL2)重装载(RCAP2H、RCAP2L)。因此当定时器T2用作波特率发生器时,如果需要,T2EX 可用作附加的外部中断。 当T2工作在波特率发生器方式下,T2的输入时钟可以由内部决定也可以由外部时钟决定。C/=0时,使用内部时钟(振荡器频率的1/2),TH2、TL2 将加1;C/=1时,使用T2的外部脉冲信号,每次下降沿,TH2、TL2 将加1,外部脉冲频率不可超过振荡器频率的1/24。 尚辅网 因此,对TH2、TH1进行读写是不准确的。只能对RCAP2H、RCAP2L进行读,但不要进行写,否则将导致自动重装错误。当对T2或寄存器RCAP2H、RCAP2L进行访问时,应关闭定时器(TR2=0)。 T2作为波特率发生器时,不同于定时器操作。当T2被设置在“定时”方式(C/=0),作为定时器,它会在每个机器周期里计一个数(1/12 振荡频率)。当T2作为波特率发生器时,它会在每个状态周期里计一个数(1/2 振荡频率)。 T2工作在波特率发生器方式时 如果外部时钟信号由T2脚进入,波特率为: 波特率=如果时钟信号由内部产生,则波特率为: 波特率=自动重装初值为:RCAP2H、RCAP2L=65536-(fosc/32*波特率) 尚辅网 通过对T

您可能关注的文档

文档评论(0)

带头大哥 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档