- 1、本文档共46页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
● GATE=1时,由外部中断引脚INT0、INT1和TR0、TR1共同来启动定时器。当INT0引脚为高电平时,TR0置位启动定时器T0;当引脚INT1为高电平时,TR1置位,启动定时器T1。 ●GATE=0时,仅由TR0和TR1置位来启动定时器T0和T1。 ●C/T=0时,选择定时功能. 计数输入信号是内部时钟脉冲,1/12 fosc ●C/T=1时,选择计数功能. 通过引脚T0和T1对外部信号进行计数, 在每个机器周期的S5P2期间,CPU采样引脚的输入电平。若前一机器周期采样值为1,下一机器周期采样值为0,则计数器增1 【 6-- 7 】 80C51 单片机的定时器/计数器 T0 以定时方法在 P3.1 引脚上输出周期为 400μ s ,占空比为 9: 1的矩形脉冲,以定时工作方式 2 编程实现。并对源程序加以注释。 fosc=6 M H z 。【答】矩形脉冲高电平时间为 3 6 0 μ s ,低电平时间为 40 μ s 。机器周期为 2 μ s 。计算: 360μs 定时, TC =28-360?s/2?s=256-180=76 TC=4CH 40μs 定时, TC =28-40?s/2?s=256-20=236 TC=ECH 采用查询法编程: ORG 0000H AJMP MAIN ORG 0030H MAIN : MOV TMOD , #02H ;定时器 T0 以方式 2 定时 MOV TH0 , #0ECH ;定时 40 μ s MOV TL0 , #0ECH CLR P3.1 ; P3.1 初始值 SETB TR0 ;开启定时器 T0 LOOP : CLR P3.1 JBC TF0 ,REP ;查询 40μs 定时到,则转 AJMP LOOP REP : SETB P3.1; P3 .1 输出高电平 360 μ s MOV R7 , #09H ;定时 40μ s X 9=360μ s LOOPl : JBC TF0 ,REPI ;查询高电平 360μs 定时到,则转 AJMP LOOPl REPI : DJNZ R7 ,LOOPl AJMP LOOP ; 360 μ s 到,则转回输出周期波形 END 程序如下: ORG 0000H AJMP MAIN ORG 001BH AJMP INTER ORG 0030HMAIN : MOV TMOD , #1 0H ;T1 为定时器方式 1 MOV THI , #0D8H ; 1 0 ms 定时初始值 MOV TLI , #0F0H MOV R7 , #60 ;定时 1 分计数器 MOV R0 , #1 00 ;定时 1 S 计数器 SETB TRI ;开启定时器 T1 SETB ETI ;开定时器 T1 中断 SETB EA ;开中断 CLR P1.0 ;初始值 CLR P1.1 AJMP $ ;定时中断等待 10ms中断服务程序 .INTER : MOV THI , #0D8H MOV TLI , #0F0H ;重置 10ms 定时常数 DJNZ R0, REP CPL P1 . 0 ; 1 s 定时到, P1.0 取反输出 MOV R0 ,#1 00 CLR P1.0 DJNZ R7 ,REP ;若 R7 不为 0 ,则中断返回 CPL P1.1 ; 1 分定时到,则 P1.1 取反输出 MOV R7 , #60 ; CLR P1.0 REP : RETI
文档评论(0)