单片机实训报告基于51单片机多功能数字钟内容摘要:

MOV T1MSECOND,A CJNE A,00,DISPT1 ;满 1S MOV A,T1SECOND ;秒加 1 调整 ADD A,1 DA A MOV T1SECOND,A CJNE A,60H,DISPT1 ;满 1MIN MOV T1SECOND,0 ;秒清 0 MOV A,T1MINIT ;分加 1 调整 ADD A, 1 DA A MOV T1MINIT,A CJNE A,60H,DISPT1 ;满 1H MOV T1MINIT,0 ;分清 0 MOV A,T1HOUR ;小时加 1 调整 ADD A,1 DA A MOV T1HOUR,A CJNE A,24H,DISPT1 ;满 1D MOV T1HOUR,0 ;小时清 0 DISPT1: LCALL DISPLAY4 9 RETI ;外部中断 0 中断服务子程序 SEVER: LCALL READKEY ;读键值 CJNE A,0F0H,TIMESET ;“调整时间”键按下 JB ADJUST,KK ;已在调整时间,“调整”键 无效 JB TSET,KK ;已在设定时间,“调整”键无效 SETB ADJUST ;置位修改标志位 MOV TADJAREA,HOUR ;送时分秒至时间修改单元 MOV TADJAREA+1,MINIT MOV TADJAREA+2,SECOND MOV TPOINT,TADJAREA ;指向修改时间高位地址,以便区别显示 CLR ODDEVEN ;设置高低位标志 LCALL DISPLAY2 ; 6 位显示 KK: RETI ;设定时间 TIMESET: CJNE A,0F8H,CLRALL ;定时键按下。 JB ADJUST,ROK2 ;已在修改时间,设定键无效 JB TSET,ROK2 ;已在设定时间,设定键无效 MOV A,TNUM ;取出已设定定时个数 CJNE A,HNUM,TMST ;判断是否达到上限 SETB CLRFLAG ;满则显示提示信息“ RAMOV” MOV DCODE,0AFH MOV DCODE+1,88H MOV DCODE+2,0ABH MOV DCODE+3,0BBH MOV DCODE+4,0C0H MOV DCODE+5,0E3H LCALL DISPLAY1 ;显示 LCALL DELAY2S ;延时 2S ROK2: RETI ;中断返回 TMST: SETB TSET ;置位修改标志位 MOV TSETAREA,0 ;清 0 时 MOV TSETAREA+1,0 ;清 0 分 MOV TPOINT,TSETAREA ;指向设定定时位置,以便区别显示 CLR ODDEVEN ;设置高低位标志 LCALL DISPLAY3 ; 4 位显示 RETI CLRALL: CJNE A,0F1H,SUREKEY ;清除键按下。 CLR EX0 ;关外中断 0 SETB CLRFLAG ;置位正在清除标志位 MOV DCODE,92H ;显示“ SURE”,确认修改 MOV DCODE+1,0E3H MOV DCODE+2,0AFH 10 MOV DCODE+3,86H MOV DCODE+4,0ACH MOV A,0 ;后面 3 位不显示 MOV DCODE+5,A LCALL DISPLAY1 WW: SETB JB ,WW LCALL READKEY ;读键 CJNE A,0F9H,ROK3 ;确认键按下,清除所有定时点数据 MOV R0,TNUM ;指向起始位置 MOV R7,HNUM*2+1 ;需要清除的单元个数 MOV A,0 CLRLP: MOV @R0,A ;清除 INC R0 DJNZ R7,CLRLP MOV DCODE,88H ;显示删除信息“ ALLCLR” MOV DCODE+1,0C7H MOV DCODE+2,0C7H MOV DCODE+3,0A7H MOV DCODE+4,0C7H MOV DCODE+5,0AFH LCALL DISPLAY1 LCALL DELAY2S SETB EX0 ;开外部中断 0 CLR CLRFLAG ;还原正在清除标志位 ROK3: RETI SUREKEY: CJNE A,0F9H,T1KEY ;确认键按下 JNB ADJUST,SS ;修改时间时,确认键按下 MOV HOUR,TADJAREA ;记录下修改的时分秒 MOV MINIT,TADJAREA+1 MOV SECOND,TADJAREA+2 CLR ADJUST ;清除正在修改时间标志位 LCALL DISPLAY RETI SS: JNB TSET,ROK4 ;设定定时时,确认键按下 CLR TSET ;清 0 正在定时标志位 MOV A,TNUM ;保存设定的定时点数据 RL A ;乘 2 字节 ADD A,TAREA ;地址加 2 MOV R0,A MOV @R0,TSETAREA ;保存设定定时点的“时” INC R0 ;地址加 1。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。