⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 flashee.lst

📁 aduc812精典源代码下载,适合初学者
💻 LST
📖 第 1 页 / 共 2 页
字号:
                     114    
005A                 115    BLINK:                          ; turn LED on or off for the duration
                     116                                    ; based on the value in EDATA3/2/1
FLASHEE                                                                                                       PAGE 3

005A B2B4            117            CPL     LED
                     118    
005C 758200          119            MOV     DPL,#0
005F 758300          120            MOV     DPH,#0          ; clear DPTR
0062 758400          121            MOV     DPP,#0
                     122    
0065 A3              123    AGAIN1: INC     DPTR            ; increment DPTR..                  2
0066 E584            124            MOV     A,DPP           ;                                   1
0068 B5BE0A          125            CJNE    A,EDATA3,CMPR3  ;                                   2
006B E583            126            MOV     A,DPH           ;                                   1
006D B5BD08          127            CJNE    A,EDATA2,CMPR2  ;                                   2
0070 E582            128            MOV     A,DPL           ;                                   1
0072 B5BC06          129            CJNE    A,EDATA1,CMPR1  ;                                   2
0075 00              130    CMPR3:  NOP                     ;                                   1
0076 00              131            NOP                     ;                                   1
0077 00              132            NOP                     ;                                   1
0078 00              133    CMPR2:  NOP                     ;                                   1
0079 00              134            NOP                     ;                                   1
007A 00              135            NOP                     ;                                   1
007B 40E8            136    CMPR1:  JC      AGAIN1          ; ..until DPTR>=EDATA3/2/1          2
                     137    
007D 22              138            RET
                     139    
                     140    ; this routine directly controls LED on and off times based on data
                     141    ; previously stored by a similar routine (GETVAL) which measures
                     142    ; BUTTON on and off times.
                     143    
                     144    ;____________________________________________________________________
                     145    
007E                 146    GETVAL:                         ; get a value based on duration of
                     147                                    ; button press
007E 758200          148            MOV     DPL,#0
0081 758300          149            MOV     DPH,#0          ; clear DPTR
0084 758400          150            MOV     DPP,#0
                     151    
0087 B2B4            152            CPL     LED
                     153    
0089 A3              154    AGAIN2: INC     DPTR            ; keep incrementing DPTR..          2
008A 00              155            NOP                     ;                                   1
008B 00              156            NOP                     ;                                   1
008C 00              157            NOP                     ;                                   1
008D 00              158            NOP                     ;                                   1
008E 00              159            NOP                     ;                                   1
008F 00              160            NOP                     ;                                   1
0090 00              161            NOP                     ;                                   1
0091 30B404          162            JNB     LED,CHKB        ;                                   2
0094 30B2F2          163            JNB     BUTTON,AGAIN2   ;                                   2
0097 22              164            RET                     ; ..until the button changes state
0098 20B2EE          165    CHKB:   JB      BUTTON,AGAIN2   ;                                   2
009B 22              166            RET
                     167    
                     168    ; DPTR (DPP,DPH,DPL) now holds a number that represents the length of
                     169    ; time between button edges.  this data will be stored in FlashEE
                     170    ; space for use in controlling LED on and off times in "play" mode.
                     171    
                     172    ;____________________________________________________________________
                     173    
009C                 174    DELAY:                          ; delay 100ms * A
FLASHEE                                                                                                       PAGE 4

                     175    
009C 7FC8            176    DLY0:   MOV     R7,#200         ; 200 * 500us = 100ms
009E 7EE5            177    DLY1:   MOV     R6,#229         ; 229 * 2.17us = 500us
00A0 DEFE            178            DJNZ    R6,$            ; sit here for 500us
00A2 DFFA            179            DJNZ    R7,DLY1         ; repeat 200 times (100ms total)
00A4 D5E0F5          180            DJNZ    ACC,DELAY       ; repeat 100ms delay ACC times
00A7 22              181            RET
                     182    
                     183    ;____________________________________________________________________
                     184    
                     185    END

VERSION 1.2h ASSEMBLY COMPLETE, 0 ERRORS FOUND
FLASHEE                                                                                                       PAGE 5

ACC. . . . . . . . . . . . . . .  D ADDR  00E0H  PREDEFINED  
AGAIN1 . . . . . . . . . . . . .  C ADDR  0065H  
AGAIN2 . . . . . . . . . . . . .  C ADDR  0089H  
BLINK. . . . . . . . . . . . . .  C ADDR  005AH  
BUTTON . . . . . . . . . . . . .    NUMB  00B2H  
CHKB . . . . . . . . . . . . . .  C ADDR  0098H  
CMPR1. . . . . . . . . . . . . .  C ADDR  007BH  
CMPR2. . . . . . . . . . . . . .  C ADDR  0078H  
CMPR3. . . . . . . . . . . . . .  C ADDR  0075H  
CMPRG. . . . . . . . . . . . . .  C ADDR  0054H  
CMPRR. . . . . . . . . . . . . .  C ADDR  001CH  
DELAY. . . . . . . . . . . . . .  C ADDR  009CH  
DLY0 . . . . . . . . . . . . . .  C ADDR  009CH  NOT USED  
DLY1 . . . . . . . . . . . . . .  C ADDR  009EH  
DPH. . . . . . . . . . . . . . .  D ADDR  0083H  PREDEFINED  
DPL. . . . . . . . . . . . . . .  D ADDR  0082H  PREDEFINED  
DPP. . . . . . . . . . . . . . .  D ADDR  0084H  PREDEFINED  
EADRL. . . . . . . . . . . . . .  D ADDR  00C6H  PREDEFINED  
ECON . . . . . . . . . . . . . .  D ADDR  00B9H  PREDEFINED  
EDATA1 . . . . . . . . . . . . .  D ADDR  00BCH  PREDEFINED  
EDATA2 . . . . . . . . . . . . .  D ADDR  00BDH  PREDEFINED  
EDATA3 . . . . . . . . . . . . .  D ADDR  00BEH  PREDEFINED  
EDATA4 . . . . . . . . . . . . .  D ADDR  00BFH  PREDEFINED  
EMPTY. . . . . . . . . . . . . .  C ADDR  001EH  
ERASE. . . . . . . . . . . . . .    NUMB  0005H  
ERASEALL . . . . . . . . . . . .    NUMB  0006H  
F0 . . . . . . . . . . . . . . .  B ADDR  00D5H  PREDEFINED  
GETNEW . . . . . . . . . . . . .  C ADDR  0031H  
GETVAL . . . . . . . . . . . . .  C ADDR  007EH  
LED. . . . . . . . . . . . . . .    NUMB  00B4H  
P3 . . . . . . . . . . . . . . .  D ADDR  00B0H  PREDEFINED  
PREVIOUS . . . . . . . . . . . .    NUMB  00D5H  NOT USED  
READ . . . . . . . . . . . . . .    NUMB  0001H  
READPG . . . . . . . . . . . . .  C ADDR  000AH  
VERIFY . . . . . . . . . . . . .    NUMB  0004H  
WRITE. . . . . . . . . . . . . .    NUMB  0002H  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -