- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
六位数码管的电子时钟程序单片机
ORG0000H;程序入口地址
LJMPSTART
ORG000BH;定时器0中断入口地址
LJMPTIMER_0
ORG0300H
/*****程序开始,初始化*****/
START:
SETB48H;使用一个bit位用于调时闪烁标志
SETB47H;使用一个bit位用于产生脉冲用于调时快进时基
MOVR1,#0;调整选择键功能标志:0正常走时、1调时、2调分、
3调秒
MOV20H,#00H;用于控制秒基准时钟源的产生
MOV21H,#00H;清零秒寄存器
MOV22H,#00H;清零分寄存器
MOV23H,#00H;清零时寄存器
MOV24H,#00H;用于控制调时闪烁的基准时钟的产生
MOVIP,#02H;IP,IE初始化
MOVIE,#82H
MOVTMOD,#01H;设定定时器0工作方式1
MOVTH0,#3CH
MOVTL0,#0B0H;赋定时初值,定时50ms
SETBTR0;启动定时器0
MOVSP,#40H;重设堆栈指针
/*****主程序*****/
MAIN:
LCALLDISPLAY;调用显示子程序
LCALLKEY_SCAN;调用按键检测子程序
JZMAIN;无键按下则返回重新循环
LCALLSET_KEY;调用选择键处理子程序
JB46H,MAIN;如果已进行长按调整(调时快进),则不再执行下
面的单步调整
LCALLADD_KEY;调用增加键处理子程序,加一
LCALLDEC_KEY;调用减少键处理子程序,减一
LJMPMAIN;重新循环
/*****定时器中断服务程序*****/
TIMER_0:
PUSHACC
PUSHPSW;保护现场
MOVTH0,#3CH
MOVTL0,#0B0H;重新赋定时初值
CPL47H;产生脉冲用于调时快进时基
INC24H
MOVA,24H
CJNEA,#10,ADD_TIME;产生0.5秒基准时钟,用于调时闪烁
CPL48H;取反调时闪烁标志位
MOV24H,#00H
ADD_TIME:;走时
INC20H
MOVA,20H
CJNEA,#20,RETI1;产生1秒基准时钟
MOV20H,#00H;一秒钟时间到,清零20H
MOVA,21H
ADDA,#01H
DAA;作十进制调整
MOV21H,A
CJNEA,#60H,RETI1
MOV21H,#00H;一分钟到
MOVA,22H
ADDA,#01H
DAA
MOV22H,A
CJNEA,#60H,RETI1
MOV22H,#00H;一小时到
MOVA,23H
ADDA,#01H
DAA
MOV23H,A
CJNEA,#24H,RETI1
MOV23H,#00H;到24点,清零小时
RETI1:
POPPSW
POPACC;恢复现场
RETI;中断返回
/*****显示处理*****/
DISPLAY:
MOVA,21H;秒
ANLA,#0FH
MOV2FH,A;转换出秒个位,存入2FH
MOVA,21H
ANLA,#0F0H
SWAPA
MOV2EH,A;转换出秒十位,存入2EH
JB46H,MIN;如果长按按键(调时快进),则跳过闪烁处理程序
CJNER1,#3,MIN;
文档评论(0)