锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

单片机数字电子时钟系统

时间:2024-06-11 17:37:11

今天傍晚,终于把自己数字电子时钟系统程序调试出来了!心里美滋滋的,经过这个系统的开发,我学会了

单片机系统的开发。其实,这个时钟系统花了我一个礼拜的时间。从刚开始的显示模块,到模块,我都一步一步

实现。当然,这其中,也遇到了很多困难,麻烦!刚开始,部分一点不显示,键盘也没用,很烦人,很恼火。

但是,我还是把程序调试出来了,并且在硬件上运行达到效果。本以为这几部分实现了后,联合在一块,偶的时钟系统就OK 了。然而,我错了,一个模块运行成功并不意味着模块组成的系统就能按照预想的一样达到目的,实现功能!当我将几个模块结合在一块时候,问题有接踵而至!哎呀!烦人啊!我只能重新设计方案,重新检查,重新写程序,源代码写了

一遍又一遍,程序调了又调,程序一遍又一遍地下载到单片机中运行,观察现象,分析出错原因,找出解决办法!最终,

在我的不断努力下,我的单片机数字电子时钟系统成功的实现了所有的功能,达到了预期的效果!!先把我写了好多遍,

调试了好多遍的源代码上传,来和大家一起分享一下!!

     ORG  0000H     SJMP START     ORG  0003H     LJMP INTT0     ORG  000BH     LJMP TIME0     ORG  001BH     LJMP TIME1     ORG  0045H      START:MOV SP,#60H            SETB EA     SETB ET0     SETB ET1     MOV TMOD,#11H     MOV TL0,#0B0H     MOV TH0,#3CH     MOV TL1,#80H     MOV TH1,#0C1H     SETB EX0     CLR IT0     SETB PX0     MOV R0,#20     MOV 40H,#0     MOV 41H,#0     MOV 42H,#0     MOV 30H,#0     MOV 31H,#0     MOV 32H,#0     MOV 33H,#0     MOV 34H,#0     MOV 35H,#0     MOV P2,#0FFH     SETB TR0     SETB TR1     SJMP $      INTT0:CLR TR0            CLR TR1            PUSH ACC     PUSH PSW     LCALL DISP     MOV P1,#0FFH       KEY1:JNB P1.0,ST            LCALL DISP            JNB P1.1,MT     LCALL DISP     JNB P1.2,HT     LCALL DISP     JNB P1.3,COMN     LCALL DISP     SJMP KEY1       COMN:LCALL CONT  ST:LCALL DELAY2     JB P1.0,KEY1     JNB P1.0,$     INC 40H     MOV A,40H     MOV B,#10     DIV AB     MOV 31H,A     MOV A,B     MOV 30H,A     LCALL DISP     MOV A,40H     CJNE A,#60,KEY1     MOV 30H,#0     MOV 31H,#0     MOV 40H,#0     LJMP KEY1         MT:LCALL DELAY2     JB P1.1,KEY1     JNB P1.1,$     INC 41H     MOV A,41H     MOV B,#10     DIV AB     MOV 33H,A     MOV A,B     MOV 32H,A     LCALL DISP     MOV A,41H     CJNE A,#60,KEY1     MOV 32H,#0     MOV 33H,#0     MOV 41H,#0     LJMP KEY1         HT:LCALL DELAY2     JB P1.2,KEY1     JNB P1.2,$     INC 42H     MOV A,42H     MOV B,#10     DIV AB     MOV 35H,A     MOV A,B     MOV 34H,A     LCALL DISP     MOV A,42H     CJNE A,#24,KEYPRESS     MOV 34H,#0     MOV 35H,#0                   MOV 42H,#0     LJMP KEY1          KEYPRESS:LCALL KEY1       CONT:LCALL DELAY2            JB P1.3,KEYPRESS     JNB P1.3,$     SETB TR0     SETB TR1     POP PSW     POP ACC     RETI      TIME0:PUSH ACC            PUSH PSW     MOV TL0,#0B0H     MOV TH0,#3CH     DJNZ R0,BACK     MOV R0,#20     INC 40H     MOV A,40H     MOV B,#10     DIV AB     MOV 31H,A     MOV A,B     MOV 30H,A     MOV A,40H     CJNE A,#60,BACK     MOV 30H,#0     MOV 31H,#0     MOV 40H,#0     INC 41H     MOV A,41H     MOV B,#10     DIV AB     MOV 33H,A     MOV A,B     MOV 32H,A     MOV A,41H     CJNE A,#60,BACK     MOV 32H,#0     MOV 33H,#0     MOV 41H,#0     INC 42H     MOV A,42H     MOV B,#10     DIV AB     MOV 35H,A     MOV A,B     MOV 34H,A     MOV A,42H     CJNE A,#24,BACK     MOV 42H,#0     MOV 34H,#0     MOV 35H,#0     MOV 30H,#0     MOV 31H,#0     MOV 32H,#0     MOV 33H,#0       BACK:POP PSW            POP ACC     RETI      TIME1:PUSH ACC            PUSH PSW     MOV TL1,#80H     MOV TH1,#0C1H     LCALL DISP     POP PSW     POP ACC     RETI       DISP:MOV DPTR,#TAB1            MOV A,30H     MOVC A,@A+DPTR     MOV P0,A     SETB P2.0     CLR P2.5     LCALL DELAY1     SETB P2.5     MOV A,31H     MOVC A,@A+DPTR     MOV P0,A     SETB P2.0     CLR P2.4     LCALL DELAY1     MOV DPTR,#TAB2     MOV A,32H     MOVC A,@A+DPTR     SETB P2.4     MOV P0,A     SETB P2.0     CLR P2.3     LCALL DELAY1     MOV DPTR,#TAB1     MOV A,33H     MOVC A,@A+DPTR     SETB P2.3     MOV P0,A     SETB P2.0     CLR P2.2     LCALL DELAY1     MOV DPTR,#TAB2     MOV A,34H     MOVC A,@A+DPTR     SETB P2.2     MOV P0,A     SETB P2.0     CLR P2.1     LCALL DELAY1     MOV DPTR,#TAB1     MOV A,35H     MOVC A,@A+DPTR     SETB P2.1     MOV P0,A     CLR P2.0     LCALL DELAY1     RET            DELAY1:MOV R7,#02H         DL:MOV R6,#0FFH        DL1:DJNZ R6,DL1            DJNZ R7,DL     RET     DELAY2:MOV R7,#10H        TS1:MOV R6,#0FFH        TS2:DJNZ R6,TS2            DJNZ R7,TS1     RET       TAB1:DB 0C0H,0F9H,0A4H,0B0H,99H            DB 92H,82H,0F8H,80H,90H       TAB2:DB 40H,79H,24H,30H,19H            DB 12H,02H,78H,00H,10H     END 

-电子元器件采购网(www.ruidan.com)是本土元器件目录分销商,采用“小批量、现货、样品”销售模式,致力于满足客户多型号、高质量、快速交付的采购需求。 自建高效智能仓储,拥有自营库存超过50,000种,提供一站式正品现货采购、个性化解决方案、选型替代等多元化服务。
锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章