×
单片机 > 单片机程序设计 > 详情

电子秒表汇编程序-精度高

发布时间:2020-05-28 发布时间:
|

这几天,一直在写电子秒表程序,今天终于调试出来了!感觉还不错,很好!误差非常小,很适合做电子时钟

源程序的一个小模块,现把源代码上传,和大家一起分享一下!!

           ORG  0000H
           SJMP START
           ORG  000BH
           LJMP TIME0
           ORG 001BH
           LJMP TIME1
           ORG  0045H
     START:MOV SP,#60H
           MOV 40H,#0
           MOV 41H,#0
           MOV 30H,#0
           MOV 31H,#0
           MOV 32H,#0
           MOV 33H,#0
           SETB EA
           SETB ET0
           SETB ET1
           MOV TMOD,#11H
           MOV TL1,#80H
           MOV TH1,#0C1H
           MOV TL0,#0B0H
           MOV TH0,#3CH
           MOV R2,#20
           SETB PT0
           SETB P2.5
           SETB TR0
           SETB TR1
           SJMP $
     TIME0:PUSH ACC
           PUSH PSW
           MOV TL0,#0B0H
           MOV TH0,#3CH
           DJNZ R2,BACK
           MOV R2,#20
           INC 40H
           MOV A,40H
           MOV B,#10
           DIV AB
           MOV 30H,A
           MOV A,B
           MOV 31H,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 32H,A
           MOV A,B
           MOV 33H,A
           MOV A,41H
           CJNE A,#60,BACK
           MOV 32H,#0
           MOV 33H,#0
           MOV 41H,#0
      BACK:POP PSW
           POP ACC
           RETI
     TIME1:PUSH ACC
           PUSH PSW
           MOV TL1,#80H
           MOV TH1,#0C1H
           MOV DPTR,#TAB1
           MOV R0,#31H
           MOV A,@R0
           MOVC A,@A+DPTR
           MOV P0,A
           SETB P2.0
           CLR P2.3
           LCALL DELAY
           SETB P2.2
           SETB P2.1
           MOV R1,#30H
           MOV A,@R1
           MOVC A,@A+DPTR
           SETB P2.3
           MOV P0,A
           SETB P2.0
           CLR P2.2
           LCALL DELAY
           MOV DPTR,#TAB2
           MOV A,33H
           MOVC A,@A+DPTR
           SETB P2.2
           MOV P0,A
           SETB P2.0
           CLR P2.1
           LCALL DELAY
           MOV DPTR,#TAB1
           MOV A,32H
           MOVC A,@A+DPTR
           SETB P2.1
           MOV P0,A
           CLR P2.0
           LCALL DELAY
           POP PSW
           POP ACC
           RETI
     DELAY:MOV R7,#02H
        DL:MOV R6,#0FFH
       DL1:DJNZ R6,DL1
    DJNZ R7,DL
    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
关键字:电子秒表  汇编程序  精度高 

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
Keil(MDK-ARM)系列教程(七)_菜单