AT89C2051制电子钟时钟源程序.pdf

AT89C2051制电子钟时钟源程序.pdf

ID:58942661

大小:256.46 KB

页数:7页

时间:2020-09-17

AT89C2051制电子钟时钟源程序.pdf_第1页
AT89C2051制电子钟时钟源程序.pdf_第2页
AT89C2051制电子钟时钟源程序.pdf_第3页
AT89C2051制电子钟时钟源程序.pdf_第4页
AT89C2051制电子钟时钟源程序.pdf_第5页
资源描述:

《AT89C2051制电子钟时钟源程序.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯精品资料推荐⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯AT89C2051制电子钟时钟源程序本程序来自于互联网,站长尚没试验,但是,该程序给出了详细的说明,相信对大家很有帮助!因此,站长向原作者表示真诚谢意!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AT89C2051时钟程序;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;定时器T0、T1溢出周期为50MS,T0为秒计数用,T1为调整时闪烁用,;P3.7为调整按钮,P1口为字符输出口,采用共阳显示管。;;;;;;;;;

2、;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;中断入口程序;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ORG0000H;程序执行开始地址LJMPSTART;跳到标号START执行ORG0003H;外中断0中断程序入口RETI;外中断0中断返回ORG000BH;定时器T0中断程序入口LJMPINTT0;跳至INTTO执行ORG0013H;外中断1中断程序入口RETI;外中断1中断返回ORG001BH;定时器T1中断程序入口LJMPINTT1;跳至INTT1执行ORG0023H;串行中断程序入口地址RETI;串行中断程序返回;;

3、;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;主程序;;1⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯精品资料推荐⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;START:MOVR0,#70H;清70H-7AH共11个内存单元MOVR7,#0BH;CLEARDISP:MOV@R0,#00H;INCR0;DJNZR7,CLEARDISP;MOV20H,#00H;清20H(标志用)MOV7AH,#0AH;放入"熄灭符"数据MOVTMOD,#11H;设T0、T1为16位定时器MOVTL0

4、,#0B0H;50MS定时初值(T0计时用)MOVTH0,#3CH;50MS定时初值MOVTL1,#0B0H;50MS定时初值(T1闪烁定时用)MOVTH1,#3CH;50MS定时初值SETBEA;总中断开放SETBET0;允许T0中断SETBTR0;开启T0定时器MOVR4,#14H;1秒定时用初值(50MS×20)START1:LCALLDISPLAY;调用显示子程序JNBP3.7,SETMM1;P3.7口为0时转时间调整程序SJMPSTART1;P3.7口为1时跳回START1SETMM1:LJMPSETMM;转到时间调整程序SETMM;;;;;;;;;;;;;;;;;;;;;;;;;

5、;;;;;;;;;;;;;;;;;;;1秒计时程序;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;T0中断服务程序INTT0:PUSHACC;累加器入栈保护PUSHPSW;状态字入栈保护CLRET0;关T0中断允许CLRTR0;关闭定时器T0MOVA,#0B7H;中断响应时间同步修正ADDA,TL0;低8位初值修正MOVTL0,A;重装初值(低8位修正值)MOVA,#3CH;高8位初值修正ADDCA,TH0;MOVTH0,A;重装初值(高8位修正值)SETBTR0;开启定时器T0DJNZR4,OUTT0;20次中断未到中断退出ADDSS:MOVR4,#

6、14H;20次中断到(1秒)重赋初值MOVR0,#71H;指向秒计时单元(71H-72H)ACALLADD1;调用加1程序(加1秒操作)MOVA,R3;秒数据放入A(R3为2位十进制数组合)CLRC;清进位标志CJNEA,#60H,ADDMM;ADDMM:JCOUTT0;小于60秒时中断退出2⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯精品资料推荐⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ACALLCLR0;大于或等于60秒时对秒计时单元清0MOVR0,#77H;指向分计时单元(76H-77H)ACALLADD1;分计时单元加1分钟MOVA,R3;分数据放入ACLRC;清进位标志CJNEA,#

7、60H,ADDHH;ADDHH:JCOUTT0;小于60分时中断退出ACALLCLR0;大于或等于60分时分计时单元清0MOVR0,#79H;指向小时计时单元(78H-79H)ACALLADD1;小时计时单元加1小时MOVA,R3;时数据放入ACLRC;清进位标志CJNEA,#24H,HOUR;HOUR:JCOUTT0;小于24小时中断退出ACALLCLR0;大于或等于24小时小时计时单元清0OUTT0:MO

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。