ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:19.60KB ,
资源ID:21229212      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/21229212.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(51单片机做数字电子钟Word格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

51单片机做数字电子钟Word格式.docx

1、 LJMP START ORG 0003H ;外中断0中断程序入口 RETI ORG 000BH ;定时器T0中断程序入口 LJMP INTT0 ;跳至INTTO执行 ORG 0013H ;外中断1中断程序入口 ORG 001BH ;定时器T1中断程序入口 LJMP INTT1 ORG 0023H ;串行中断程序入口地址 ;-主程序-; START:MOV R0,#70H ;70给R0,清70-7FH显示内存 MOV R7,#0FH CLEARDISP:MOV R0,#00H ;0给R0中的数为地址的内存中存放(70H) INC R0 DJNZ R7,CLEARDISP MOV 78H,#2

2、;默认时间为12:00,闹钟5:00 MOV 79H,#1 MOV 74H,#2 ;防止上电时数码管显示00小时 MOV 75H,#1 MOV 66H,#1 ;中断退出时66H为1时,分、时计时单元数据移入显存标志 MOV 68H,#1 ;上电默认闹钟开状态 MOV 7DH,#6 ;闹钟时十位 MOV 7CH,#3 MOV 69H,#0 MOV 7AH,#0AH ;放入熄灭符数据 MOV TMOD,#11H ;设T0、T1为16位定时器 MOV TL0,#0B0H ;50MS定时初值(T0计时用) MOV TH0,#3CH SETB EA ;总中断开放 SETB ET0 ;允许T0中断 SET

3、B TR0 ;T0定时器开始计时 MOV R4,#14H ;1秒定时用初值(50MS20) START1:LCALL DISPLAY ;显示子程序 LCALL BEEP ;闹钟查询 JNB P1.7,SETTIME ;P1.7口为0时转时间调整程序 JMP START1 ;P1.7口为1时跳回START1 -时间闹钟调整系统-; NFLAG:MOV A,68H ;设置闹钟开关状态 CJNE A,#1,BEE68 MOV 68H,#0 JMP E6 BEE68:MOV 68H,#1 E6:MOV 66H,#8 ;中断退出66H不为1时分、时计时单元数据移入显存标志 MOV 72H,7BH MOV

4、 73H,7CH MOV 74H,7DH MOV 75H,7EH LCALL DDL MOV 72H,68H MOV 73H,69H MOV 74H,7AH MOV 75H,7AH MOV 66H,#1 LJMP START1 SETTIME:LCALL DDL P1.7,NFLAG ;键按下时间小于1秒,设置闹钟开关状态并查看闹钟时间,不关走时,确保准确,大于1秒调时 MOV TL1,#0B0H ;T1闪烁定时初值 MOV TH1,#3CH MOV R2,#06H ;进入调时状态,赋闪烁定时初值 MOV 66H,#8 ;调闹钟时保持走时,关闭时钟显示数据 SETB ET1 ;允许T1中断 S

5、ETB TR1 ;开启定时器T1 SET1:调用显示,防止键按下无显示 JNB P1.7,SET1 ;P1.7口为0等待键释放 MOV R5,#00H ;清设置类型闪烁标志 SETN1:INC R5 ;闹钟分调整 SET5:LCALL DISPLAY P1.7,SET5 SEETN1:LCALL DDL ;有键按下大于1秒分时间连续加(0.5秒加1),小于1秒转调时状态 P1.7,SET6 ;键释放查询,键释放自动转调时 MOV R0,#7CH LCALL ADD1 MOV A,R3 CLR C CJNE A,#60H,HHN1 HHN1:JC SEETN1 LCALL CLR0 JMP SE

6、ETN1 SET6:闹钟时调整 SEET6: P1.7,SEET6 SEETNH1: P1.7,SETF MOV R0,#7EH CJNE A,#24H,HOUU1 HOUU1:JC SEETNH1 JMP SEETNH1 SETF: JNB P1.7,SETOUT ;短按调时,长按退出 CLR ET0 CLR TR0 MOV 70H,#00H ;设定后的时间从00秒开始走时 MOV 71H,#00H INC R5 SET3: P1.7,SET3 SETMM: P1.7,SET4 MOV R0,#77H CJNE A,#60H,MMH MMH:JC SETMM AJMP SETMM SET4:

7、INC R5 SEET4: P1.7,SEET4 SETHH: P1.7,SETOUT1 MOV R0,#79H CJNE A,#24H,HOUU HOUU:JC SETHH AJMP SETHH SETOUT1:SETB ET0 计时开始 SETOUT:MOV R5,#00H ; CLR TR1 ;关闭T1 CLR ET1 ;关T1中断 SETOUT2: JNB P1.7,SETOUT2 -延时1秒钟-; DDL:MOV 18H,#36 DDL0:MOV 17H,#239 DDL1: DJNZ 17H,DDL1 DJNZ 18H,DDL0 RET -T0中断程序-; INTT0: PUSH

8、ACC ;打包 PUSH PSW MOV A,#0B7H ADD A,TL0 MOV TL0,A MOV A,#3CH ADDC A,TH0 MOV TH0,A SETB TR0 DJNZ R4, OUTT0 ;20次中断未到中断退出 ADDSS:20次中断到(1秒)重赋初值 MOV R0,#71H ;指向秒计时单元(70-71H) ACALL ADD1 ;调用加1程序(加1秒操作) MOV A,R3 ;秒数据放入A(R3为2位十进制数组合) CLR C ;清进位标志 CJNE A,#60H,ADDMM ADDMM: JC OUTT01 ;小于60秒退出 ACALL CLR0 ;等于或大于60

9、秒清0 MOV R0,#77H ;指向分计时单元(76H-77H) ACALL ADD1 CJNE A,#60H,ADDHH ADDHH: JC OUTT0 ACALL CLR0 MOV R0,#79H ;指向小时计时单元(78H-79H) CJNE A,#24H,HOUR HOUR: OUTT0: MOV A,66H ;查询标志 CJNE A,#1,OUTT01 MOV 72H,76H ;中断退出时将分、时计时单元数据移入对应显示单元 MOV 73H,77H MOV 74H,78H MOV 75H,79H OUTT01:POP PSW ;出栈 POP ACC 开放T0 RETI ;中断返回

10、-加1程序-; ADD1: MOV A,R0 ;取当前计时单元数据到A DEC R0 ;指向前一地址 SWAP A ;A中数据高四位与低四位交换 ORL A,R0 ;前一地址中数据放入A中低四位 ADD A,#01H ;A加1操作 DA A ;十进制调整 MOV R3,A ;移入R3寄存器 ANL A,#0FH ;高四位变0 MOV R0,A ;放回前一地址单元 取回R3中暂存数据 INC R0 ;指向当前地址单元 数据放入当削地址单元中 CLR0: CLR A ;清累加器 清当前地址单元 前一地址单元清0 RET ;子程序返回 -调时闪烁程序-;INTT1: PUSH ACC MOV TL1

11、,#0B0H DJNZ R2,INTT1OUT ;0.3秒未到退出中断(50MS中断6次) 重装0.3秒定时用初值 CPL 02H ;0.3秒定时到对闪烁标志取反 02H,FLASH1 ;02H位为1时显示单元熄灭 MOV A,R5 CJNE A,#01H,NL JMP NNN1 NL:CJNE A,#02H,NL1 LJMP NNN1 NL1:CJNE A,#03H,NL2 LJMP NLL NL2:CJNE A,#04H,INTT1OUT NLL:MOV 72H,76H AJMP INTT1OUT NNN1:MOV 72H,7BH INTT1OUT:恢复现场 中断退出 FLASH1:MOV

12、 A,R5 CJNE A,#01H,ML LJMP MNN1 ML:CJNE A,#02H,ML1 LJMP MNN2 ML1:CJNE A,#03H,MN LJMP MLL MN: LJMP MHL MLL:MOV 72H,7AH MOV 73H,7AH ;显示单元(72-73H),将不显示分数据 MHL: MOV 74H,7AH ;显示单元(74-75H),小时数据将不显示 MNN1:显示单元(72-73H),将不显示闹钟分数据 MNN2: MOV 75H,7AH ;显示单元(74-75H),闹钟小时数据将不显示 -显示-; DISPLAY:MOV DPTR,#DISDATA MOV A,

13、70H MOVC A,A+DPTR MOV P3,A CLR P1.0 NOP SETB P1.0 MOV A,71H CLR P1.1 SETB P1.1 MOV A,72H CLR P1.2 SETB P1.2 MOV A,73H CLR P1.3 SETB P1.3 MOV A,74H CLR P1.4 SETB P1.4 MOV A,75H CLR P1.5 SETB P1.5 BEEP: CJNE A,#1,BEERE MOV A,78H ;查询闹钟时个位 CJNE A,7DH,BEERE MOV A,79H ;查询闹钟时十位 CJNE A,7EH,BEERE MOV A,76H ;查询闹钟分个位 CJNE A,7BH,BEERE MOV A,77H ;查询闹钟分十位 CJNE A,7CH,BEERE BB:CLR P1.6 SETB P1.6 JNB P1.7,BEERR BEERE:RET BEERR:SETB P1.6 LCALL DISPLAY JMP BEERE DISDATA:DB 0C0H,0F9H,64H,70H,59H,52H,42H,0F8H,40H,50H,0FFH ;0123456789空白

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1