分享

电瓶车充电定时插座程序保存

 周长洪 2015-05-05

一位显示电瓶车充电定时器说明书

                        作者:职业中专 周长洪

一、插座功能:上电后,显示“F,表示插座电源关闭。

用调整键调整等待通电时间,从0E可调,(0-9AbCdEF),其中10-14,分别用A-E,用F表示不充电,等待时间调到0是表示立即开始充电。

二、充电时间默认9小时,等待期间显示已等待时间,开始充电后改为显示已充电时间(小时)。充电完毕显示“F”。短按调整键后显示F,长按调整键会修改等待时间,从0开始逐步增加,若要马上充电,调整为0,若想停电,调整为F

三、该插座接市电(220V50HZ),用秒点闪烁表示定时器工作,秒点停闪,表示定时器不工作。

;程序名称:等59电瓶充电插座

电路及程序设计:浙江缙云职业中专:周长洪

;汇编程序:

DATA50MS EQU 30H 

SECONDS DATA 31H 

MINUTES DATA 32H

HOURS   DATA 33H

TO5S    DATA 34H 

DATE    DATA 35H 

TO5M    DATA 36H

WEEK    DATA 37H 

MONTH   DATA 38H 

SIZEA   DATA 39H 

YEARS   DATA 3AH 

LOWT    DATA 3BH 

THL     DATA 3CH 

ON_H    DATA 3DH 

ON_M    DATA 3EH 

OF_H    DATA 3FH 

OF_M    DATA 50H 

FLAG1    DATA 51H 

LL      DATA 52H 

HH      DATA 53H 

FLAG    BIT 25H.2 

LEYE    BIT 25H.3 

SIZE01  BIT 25H.6 

POINT   BIT P1.6  

MENU    BIT P1.3  

KEYADD  BIT P3.7  

LED0    BIT P3.3  

OUT     BIT P3.0  

TEST    BIT P3.4  

       ORG  0000H

       LJMP START

       ORG  000BH  

       LJMP CLOCK  

       ORG  0030H  

START:MOV R0,#30H  

      MOV R1,#16   

  CCC:MOV @R0,#0   

      INC R0          

      DJNZ R1,CCC 

      MOV R0,#50H  

      MOV R1,#16   

  C50:MOV @R0,#0   

      INC R0          

         DJNZ R1,C50

         MOV P3,#0FFH 

      SETB 25H.0   

      SETB 25H.1   

      SETB 25H.2   

      SETB 25H.3   

         SETB 25H.5   

         SETB 25H.6   

         SETB 25H.7   

      SETB POINT   

      SETB MENU    

         SETB KEYADD  

         SETB FLAG

         MOV OF_H,#9  

      MOV  DATE,#15H   

      MOV  WEEK,#3        

         MOV  YEARS,#15H 

      MOV  LOWT,#5H      

         MOV  MONTH,#6     

         MOV  TMOD,#01H  

      MOV  TH0,#3CH       

      MOV  TL0,#0C2H  

         MOV  THL,TL0         

      SETB  ET0       

      SETB  TR0        

      SETB  EA         

MAIN0:CLR ET0

      CLR TR0

         CLR EA

         MOV SECONDS,#0

         MOV ON_H,#15

         SETB 25H.1

         MOV R0,#ON_H

         ACALL DIS

      SETB KEYADD

         JB KEYADD,MAIN0

MAIN:ACALL TOADJ    

     ACALL H_M_S     

        MOV R0,#HOURS

     ACALL DIS         

        ACALL TINF       

     LJMP MAIN

TOADJ:SETB KEYADD           

      JB KEYADD,EXITADJ  

      ACALL DEL20MS

         SETB KEYADD

         JB KEYADD,EXITADJ    

         AJMP H0ADJ

EXITADJ:RET

ADJDEL:MOV R3,#8

   H01:MOV R2,#21H

   H00:ACALL DIS

       ACALL DEL20MS

          DJNZ R2,H00

          SETB KEYADD

          JNB KEYADD,EXITA

          DJNZ R3,H01

EXITA:RET

H0ADJ:MOV R0,#ON_H

      ACALL ADJDEL

         SETB KEYADD

         JB KEYADD,EXITH0  

ADJ:  MOV A,ON_H    

     ADD A,#1

        CJNE A,#16,DEPH0

        MOV A,#0

DEPH0:MOV ON_H,A

     MOV R0,#ON_H 

DISX:ACALL ADJDEL

        SETB KEYADD

        JNB KEYADD,ADJ 

        MOV HOURS,#0  

     MOV MINUTES,#0

        MOV SECONDS,#0 

        SETB ET0           

        SETB TR0          

        SETB EA            

        SETB OUT

        CLR FLAG

EXITH0:RET

H_M_S:MOV A,DATA50MS  

         CJNE A,#0AH,NEXT       

      SETB 25H.0             

NEXT: CJNE A,#14H,EXIT   

      CLR 25H.0                

      MOV DATA50MS,#0 

      MOV A,SECONDS           

      ADD A,#1                 

      MOV SECONDS,A           

      CJNE A,#16,EXIT     

      MOV SECONDS,#0   

         INC TO5M               

      MOV A,MINUTES            

      ADD A,#1                 

      MOV MINUTES,A           

      CJNE A,#60,EXIT     

      MOV MINUTES,#0  

      MOV A,HOURS         

      ADD A,#1                 

      MOV HOURS,A        

NEXT1:CJNE A,#60,EXIT    

      MOV HOURS,#0            

EXIT: ;MOV HOURS,MINUTES 

      ;MOV HOURS,SECONDS

     RET

DIS:MOV A,@R0

    MOV DPTR,#TAB

       MOVC A,@A+DPTR

       MOV P1,A

       JB 25H.0,D1

       SETB POINT

       ACALL DEL1MS

D1: CLR LED0

ACALL DEL1MS

    CLR POINT

    RET

TINF:JB FLAG,TIOF

     MOV A,ON_H             

        CJNE A,#15,NEXTT 

        AJMP OF0       

NEXTT:MOV B,A

     MOV A,HOURS           

     CJNE A,B,EXITNF;TIOF      

OF1: CLR OUT               

        MOV HOURS,#0    

        MOV MINUTES,#0       

        MOV SECONDS,#0

        SETB FLAG

TIOF:MOV A,HOURS     

     MOV B,OF_H               

     CJNE A,B,EXITNF  

OF0: SETB OUT             

     CLR EA                 

        CLR TR0

        CLR ET0

        CLR POINT        

        SETB FLAG

     AJMP MAIN0

EXITNF:RET

CLOCK:PUSH ACC              

      PUSH PSW              

         CLR EA               

      INC DATA50MS    

      MOV A,DATA50MS        

      CJNE A,#20,EXIT0   

      MOV R4,LOWT           

      DJNZ R4,$          

EXIT0:MOV TL0,THL       

      MOV TH0,#3CH     

      POP PSW         

      POP ACC                  

         SETB EA            

      RETI                     

DEL1MS:MOV R6,#0

       DJNZ R6,$

          DJNZ R6,$

          RET

DEL20MS:MOV R6,#35

    D20:MOV R7,#0FFH

        ACALL H_M_S      

        DJNZ R7,$

              DJNZ R6,D20

        RET;

DEL1S:  MOV R5,#0FFH

              ACALL DIS

D1S:       DJNZ R5,D1S

        RET

TAB:DB 0B7H,82H,3BH,0ABH,8EH,0ADH,0BDH,83H,0BFH,0AFH

    DB 9FH,0BCH,35H,0BAH,3DH,1DH

;其中;数码管在P1口的对应位置如下:

       ;c/h/d/e/g/f/b/a=P1.7/1.6/1.5/1.4/1.3/1.2/1.1/1.0=89c2051的引脚为:

       ;12/13/14/15/16/17/18/19

    ;DB 0F5H,05H,0E3H,0A7H,17H,0B6H,0F6H,25H,0F7H,0B7H

    ;DB 77H,0D6H,0F0H,0C7H,0F2H,072H,57H,85H,0D0H,75H

       ;DB 73H,37H,0D5H,97H

;TAB:DB 0F5H,05H,0E3H,0A7H,17H,0B6H,0F6H,25H,0F7H,0B7H

    ;DB 77H,0D6H,0F0H,0C7H,0F2H,72H

       ;其它常用字符:"H"76H**"0."0FDH**"1."0DH**

       ;"2."0DBH**"A."0F7H**"d."0DFH**"E."0FAH**

       ;"F."0F1H**"H."0F6H**"L"0D0H**"L."0B8H**

       ;"U"0D5H**"U."0DDH**"P"73H**“y"97H

       ;数码管在P1口的对应位置如下:

       ;d/e/a/f/h/c/g/b=P1.7/1.6/1.5/1.4/1.3/1.2/1.1/1.0

;TAB:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH

    ;DB 77H,7CH,39H,5EH,79H,71H

;*********************************

;TAB1:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH

 ;    DB 0F7H,0FCH,0B9H,0DEH,0F9H,0F1H

  END

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多