- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验五、单片机定时器计数器实验 一、实验目的 1、学习8031内部定
EXIT: POP DPH ;恢复现场 POP DPL POP PSW POP ACC RETI ;LED显示常数表 DATA:DB 05H,0AH,50H,0A0H, DB 55H,0AAH,0FFH,0H * * 实验五、单片机定时器计数器实验 一、实验目的 1、学习8031内部定时/计数器的使用和编程方法; 2、进一步掌握中断处理程序的编程方法。 二、实验仪器: 仿真教学实验机(5196ET)、直流稳压电源(DF 1731 SB 3A)、PC机 三、实验内容 1、定时器实验 P1.0~P1.7接DL1~DL8,运行程序T1LED,观察现象。 ORG 0000H AJMP START ORG 001BH ;T1中断入口地 AJMP INT_T1 ORG 0100H START: MOV SP,#60H MOV TMOD,#10H ;置T1为方式1 MOV TL1,#00H ;延时50mS的时间常数 MOV TH1,#4CH MOV R0,#00H MOV R1,#20 SETB TR1 ;启动定时器 SETB ET1 SETB EA ;开中断 SJMP $ INT_T1: ;T1中断服务子程序 PUSH ACC ;保护现场 PUSH PSW PUSH DPL PUSH DPH CLR TR1 ;停止计数 MOV TL1,#00H ;延时50mS常数 MOV TH1,#4cH SETB TR1 ;开始计数 DJNZ R1, EXIT MOV R1,#20 ;延时一秒的常数 MOV DPTR,#DATA ;置常数表基址 MOV A,R0 ;置常数表偏移量 MOVC A,@A+DPTR ;读常数表 MOV P1,A ;送P1口显示 INC R0 ANL R0,#07H 2、修改程序,使延时常数由50ms变为10ms。 3、计数器实验 8031的T0工作在计数器模式和方式1,对P3.4引脚的输入脉冲进行计数,T1作定时器,每50ms中断一次,并把P3.4在50ms的脉冲数量在LED上显示出来。 PO0~PO7接DL1~DL8,P3.4接Q13~Q16中的一个,273的/CS接8300H ORG 0000H AJMP START ORG 000BH ;T0中断入口地址 RETI ORG 001BH ;T1中断入口地址 AJMP INT_T1 ORG 0040H START: MOV SP,#60H MOV TMOD,#1DH ;置T1为方式1 ;置T0为方式1,计数方式, ;门控选通位有效 MOV TL0,#0H ;计数器清零 MOV TH0,#0H MOV TL1,#00H ;延时50mS常数
文档评论(0)