- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
6.3.4 方式2及应用实例 ORG 0050H 0050H DA 0B INT0:DJNZ R2,EXIT 0052H B2 91 CPL P1.1 ;P1.1取反 0054H 30 91 04 JNB P1.1,L1 ;判断P1.1电平高低 0057H 7A 02 MOV R2, #02H ;若P1.1=1,给R2赋高电平计数值 0059H 80 02 SJMP EXIT 005BH 7A 04 L1:MOV R2, #03H ;若P1.1=0,给R2赋低电平计数值 005DH 32 EXIT:RETI END 定时器0中断服务程序: 矩形波的波形图 6.3.4 方式2及应用实例 【例8】 定时器0外部输入端(P3.4) 作为计数脉冲输入端,利用手控单脉冲信号作为计数输入脉冲,编写控制程序,每输入十个脉冲,工作寄存器R0的内容加一,晶振频率为6MHz。 解:用定时器0方式2时,定时器/计数器方式寄存器TMOD低4位中的M1M0应取10; 可设定为软件启动定时器,故GATE取0; 因用计数功能,C/T取1; 定时器方式寄存器TMOD高4位为无关位,一般都取0,所以TMOD应为06H。 计数初值 X=28-计数值=28-10=256-0=246=F6H 定时器以中断方式工作。 参考程序: ORG 0000H 0000H 02 00 50 LJMP MAIN ORG 000BH ;定时器0的中断入口地址 000BH 02 02 00 LJMP SER0 ;转向中断服务程序 ORG 0050H 0050H 78 00 MAIN: MOV R0,#00H 0052H 75 89 06 MOV TMOD,#06H ;置计数器0为工作方式2 0055H 75 8C F6 MOV TH0,#0F6H ;置10次计数初值 0058H 75 8A F6 MOV TL0,#0F6H 005BH D2 AF SETB EA 005DH D2 A9 SETB ET0 005FH D2 8C SETB TR0 0061H 80 FE SJMP $ ORG 0200H 0200H 08 SER0: INC R0 ;中断服务程序 0201H 32 RETI END 6.3.4 方式2及应用实例 【例9】 利用定时器/计数器扩展一个外部中断源,用手控单脉冲信号作为外部中断信号,P1口控制八只灯(P1口输出低电平时灯被点亮),同一时间只有一盏灯点亮,编写控制程序,每发一个单脉冲信号,循环点亮下一盏灯。 解:定时器/计数器0以计数功能工作,当计数初值为FFH时,只要外部计数输入引脚T0(P3.4)输入一个计数脉冲,8位加1计数器TL0变为00H,TF0由硬件自动置1,并申请中断。利用这一特点,将外部中断请求信号作为计数脉冲送入外部计数输入引脚T0(P3.4),就可实现中断功能。 定时器/计数器0以方式2工作。 参考程序: ORG 0000H 0000H 01 50 AJMP MAIN ORG 000BH ;定时器0的中断入口地址 000BH 21 00 AJMP INT ;转向中断服务程序 ORG 0050H 0050H 75 89 06 MAIN: MOV TMOD,#06H ;置计数器0为工作方式2 0053H 75 8C FF MOV TH0,#0FFH 0056H 75 8A FF MOV TL0,#0FFH 0058H D2 AF SETB EA 005AH D2 A9 SETB ET0 005CH D2 8C SETB TR0 005EH 74 FE MOV A,#0FEH 0060H F5 90 MOV P1,A 0062H 80 FE SJMP $ ORG 0100H 0100H 23 INT: RL A ;中断服务程序 0101H
原创力文档


文档评论(0)