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

📄 rx900-ok.lst

📁 我在东莞一厂家做的宠物训练RF控制器的全部源码
💻 LST
📖 第 1 页 / 共 3 页
字号:
                      00242 ;  GPIO1 = IN
                      00243 ;  GPIO0.GPIO2.GPIO3.GPIO4.GPIO5 = OUT
                      00244 
                      00245 ;*********************************************************************
003E                  00246 INIT_GPIO
003E   0C04           00247         MOVLW           B'00000100'                     ; only GPIO.2 is input
003F   0006           00248         TRIS            GPIO
0040   0066           00249         CLRF            GPIO
0041   0800           00250         RETLW           0
                      00251 ;
0042                  00252 INIT_TMR0
0042   0CCC           00253         MOVLW           B'11001100'                     ; WDT rate 1 : 16
0043   0002           00254         OPTION
0044   0004           00255         CLRWDT
0045   0800           00256         RETLW           0
                      00257 
                      00258 ;*********************************************************************
                      00259 ; verdict three key thereinto singleton
                      00260 ; if all not homologous, return program start
                      00261 ;-----------------------------------------
0046                  00262 CHK_QC
0046   0CF0           00263         MOVLW           0F0H
0047   0092           00264         SUBWF           DATA_BUF,W
0048   0743           00265         SKPZ
MPASM 02.70 Released         RX900-OK.ASM   3-10-2003  14:59:15         PAGE  6


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

0049   0A5E           00266         GOTO            CHKAAH
004A   0CFF           00267         MOVLW           0FFH
004B   0034           00268         MOVWF           FLG_QC          ;set QC mode flag
004C   007D           00269         CLRF            COUNT1
004D   0586           00270         BSF             GPIO,BUZZER
004E   0C64           00271         MOVLW           D'100'
004F   09BB           00272         CALL            DELAYX
0050   0486           00273         BCF             GPIO,BUZZER
0051   0C50           00274         MOVLW           D'80'
0052   09BB           00275         CALL            DELAYX
0053   0586           00276         BSF             GPIO,BUZZER
0054   0C64           00277         MOVLW           D'100'
0055   09BB           00278         CALL            DELAYX
0056   0486           00279         BCF             GPIO,BUZZER
0057   0C50           00280         MOVLW           D'80'
0058   09BB           00281         CALL            DELAYX
0059   0586           00282         BSF             GPIO,BUZZER
005A   0C64           00283         MOVLW           D'100'
005B   09BB           00284         CALL            DELAYX
005C   0486           00285         BCF             GPIO,BUZZER
005D   0AAC           00286         GOTO            OK_END
005E                  00287 CHKAAH
005E   0CAA           00288         MOVLW           0AAH
005F   0092           00289         SUBWF           DATA_BUF,W
0060   0743           00290         SKPZ
0061   0A74           00291         GOTO            CHK55H
                      00292 ;
0062   0214           00293         MOVFW           FLG_QC
0063   0743           00294         SKPZ
0064   0A70           00295         GOTO            QC_AAH
                      00296 ;
0065   0586           00297         BSF             GPIO,BUZZER
0066   0C64           00298         MOVLW           D'100'
0067   09BB           00299         CALL            DELAYX
0068   0486           00300         BCF             GPIO,BUZZER
0069   0C50           00301         MOVLW           D'80'
006A   09BB           00302         CALL            DELAYX
006B   0586           00303         BSF             GPIO,BUZZER
006C   0C64           00304         MOVLW           D'100'
006D   09BB           00305         CALL            DELAYX
006E   0486           00306         BCF             GPIO,BUZZER
006F   0AAC           00307         GOTO            OK_END
0070                  00308 QC_AAH
0070   0586           00309         BSF             GPIO,BUZZER
0071   09AE           00310         CALL            DELAY3S         ; BUZZER out 3S
0072   0486           00311         BCF             GPIO,BUZZER
0073   0AAC           00312         GOTO            OK_END
0074                  00313 CHK55H
0074   0C55           00314         MOVLW           055H
0075   0092           00315         SUBWF           DATA_BUF,W
0076   0743           00316         SKPZ
0077   0A86           00317         GOTO            CHK0FH
                      00318 ;
MPASM 02.70 Released         RX900-OK.ASM   3-10-2003  14:59:15         PAGE  7


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

0078   0214           00319         MOVFW           FLG_QC
0079   0743           00320         SKPZ
007A   0A82           00321         GOTO            QC_55H
                      00322 ;
007B   05A6           00323         BSF             GPIO,SPRAY
007C   0C96           00324         MOVLW           D'150'
007D   09BB           00325         CALL            DELAYX
007E   0C96           00326         MOVLW           D'150'
007F   09BB           00327         CALL            DELAYX
0080   04A6           00328         BCF             GPIO,SPRAY
0081   0AAC           00329         GOTO            OK_END
0082                  00330 QC_55H
0082   05A6           00331         BSF             GPIO,SPRAY
0083   09AE           00332         CALL            DELAY3S         ; SPRAY out 3S
0084   04A6           00333         BCF             GPIO,SPRAY
0085   0AAC           00334         GOTO            OK_END
0086                  00335 CHK0FH
0086   0C0F           00336         MOVLW           00FH
0087   0092           00337         SUBWF           DATA_BUF,W
0088   0743           00338         SKPZ
0089   0A35           00339         GOTO            CHECK_START
                      00340 ;
008A   0214           00341         MOVFW           FLG_QC
008B   0743           00342         SKPZ
008C   0A98           00343         GOTO            QC_0FH
008D   05A6           00344         BSF             GPIO,SPRAY
008E   0CC8           00345         MOVLW           D'200'
008F   09BB           00346         CALL            DELAYX
0090   0CC8           00347         MOVLW           D'200'
0091   09BB           00348         CALL            DELAYX
0092   0CC8           00349         MOVLW           D'200'
0093   09BB           00350         CALL            DELAYX
0094   0C64           00351         MOVLW           D'100'
0095   09BB           00352         CALL            DELAYX
0096   04A6           00353         BCF             GPIO,SPRAY
0097   0AAC           00354         GOTO            OK_END
0098                  00355 QC_0FH
0098   0074           00356         CLRF            FLG_QC
0099   0586           00357         BSF             GPIO,BUZZER
009A   0C64           00358         MOVLW           D'100'
009B   09BB           00359         CALL            DELAYX
009C   0486           00360         BCF             GPIO,BUZZER
009D   0C50           00361         MOVLW           D'80'
009E   09BB           00362         CALL            DELAYX
009F   0586           00363         BSF             GPIO,BUZZER
00A0   0C64           00364         MOVLW           D'100'
00A1   09BB           00365         CALL            DELAYX
00A2   0486           00366         BCF             GPIO,BUZZER
00A3   09AE           00367         CALL            DELAY3S
00A4   0CCF           00368         MOVLW           B'11001111'                     ; WDT rate 1 : 128
00A5   0002           00369         OPTION                                  ; enter sleep 2.4s
00A6   0004           00370         CLRWDT
00A7   0003           00371         SLEEP
MPASM 02.70 Released         RX900-OK.ASM   3-10-2003  14:59:15         PAGE  8


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

00A8   0000           00372         NOP
00A9   0000           00373         NOP
00AA   0000           00374         NOP
00AB   0AAA           00375         GOTO            $-1
00AC                  00376 OK_END
00AC   05A3           00377         BLOCK2
00AD   0A1B           00378         GOTO            M_LOOP
                      00379 ;*********************************************************************
                      00380 ;*********************************************************************
00AE                  00381 DELAY3S
00AE   0C96           00382         MOVLW           D'150'                  ; 150 * 20 = 3s
00AF   0037           00383         MOVWF           R2
00B0   09BA           00384         CALL            DELAY20MS
00B1   02F7           00385         DECFSZ  R2
00B2   0AB0           00386         GOTO            $-2
00B3   0800           00387         RETLW           0
                      00388 ;
00B4                  00389 DELAY1S
00B4   0C32           00390         MOVLW           D'50'                   ; 50 * 20 = 1s
00B5   0037           00391         MOVWF           R2
00B6   09BA           00392         CALL            DELAY20MS
00B7   02F7           00393         DECFSZ  R2
00B8   0AB6           00394         GOTO            $-2
00B9   0800           00395         RETLW           0
                      00396 ;
00BA                  00397 DELAY20MS
00BA   0C14           00398         MOVLW           D'20'                           ; Td = (((R5) * 5) + 5) * (R0)
00BB                  00399 DELAYX
00BB   0035           00400         MOVWF           R0                              ;    = (200 * 5 + 5) * 20
00BC   0CC8           00401         MOVLW           D'200'                  ;    = 20ms
00BD   0036           00402         MOVWF           R1
00BE   0004           00403         CLRWDT
00BF   0004           00404         CLRWDT
00C0   02F6           00405         DECFSZ  R1
00C1   0ABE           00406         GOTO            $-3
00C2   02F5           00407         DECFSZ  R0
00C3   0ABC           00408         GOTO            $-7
00C4   0800           00409         RETLW           0
                      00410 
                      00411 
                      00412 ;----------------------------------------
                      00413 ;----------------------------------------
                      00414 ;----------------------------------------
                      00415 ;          ROM BLOCK2
                      00416 ;----------------------------------------
                      00417 ;----------------------------------------
                      00418 ;----------------------------------------
                      00419 
0210                  00420         ORG             210H
0210                  00421 _MAIN
0210   0064           00422         CLRF            FSR                             ; Select blank 0
0211   0074           00423         CLRF            FLG_QC
0212   0203           00424         MOVFW           STATUS                  ; STATUS register to W
MPASM 02.70 Released         RX900-OK.ASM   3-10-2003  14:59:15         PAGE  9


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

0213   0E98           00425         ANDLW           B'10011000'                     ; check power on of start
0214   002A           00426         MOVWF           TEMP_BUF
0215   0643           00427         SKPNZ
0216   0A28           00428         GOTO            WDT_WAKE                        ; is WDT wake the sleep
                      00429 ;
0217                  00430 POWER_UP
0217   04A3           00431         BLOCK1
0218   0942           00432         CALL            INIT_TMR0
0219   093E           00433         CALL            INIT_GPIO
021A   05A3           00434         BLOCK2
                      00435 ;=====================================================================
021B                  00436 M_LOOP
021B   0214           00437         MOVFW           FLG_QC
021C   0743           00438         SKPZ
021D   0A2C           00439         GOTO            QC_WAKE
                      00440 ;
021E   0406           00441         BCF             GPIO,ENABLE                     ; start sleep of send board
021F   04A3           00442         BLOCK1
0220   0942           00443         CALL            INIT_TMR0
0221   05A3           00444         BLOCK2
                      00445 ;
0222   0000           00446         NOP
0223   0003           00447         SLEEP                                           ; the MCU start sleep
0224   0000           00448         NOP
0225   0000           00449         NOP
0226   0000           00450         NOP
0227   0000           00451         NOP
0228                  00452 WDT_WAKE
0228   0C64           00453         MOVLW           D'100'
0229   04A3           00454         BLOCK1
022A   09BB           00455         CALL            DELAYX
022B   05A3           00456         BLOCK2
022C                  00457 QC_WAKE
022C   04A3           00458         BLOCK1
022D   0942           00459         CALL            INIT_TMR0
022E   093E           00460         CALL            INIT_GPIO
022F   05A3           00461         BLOCK2
0230   0506           00462         BSF             GPIO,ENABLE                     ; the send board start activity
0231   0C01           00463         MOVLW           D'1'
0232   04A3           00464         BLOCK1
0233   09BB           00465         CALL            DELAYX
0234   05A3           00466         BLOCK2
                      00467 ;*********************************************************************
                      00468 ; start bit existence condition:
                      00469 ;
                      00470 ; STA_BREADTHDN =/< COUNTER_BUF =/< STA_BREADTHUP
                      00471 ;
                      00472 ;--------------------------------------------
0235                  00473 CHECK_START
0235   0C09           00474         MOVLW           D'9'
0236   003A           00475         MOVWF           LOOK_CONT
0237   02FA           00476         DECFSZ  LOOK_CONT
0238   0A3A           00477         GOTO            $+2
MPASM 02.70 Released         RX900-OK.ASM   3-10-2003  14:59:15         PAGE 10


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

0239   0A1B           00478         GOTO            M_LOOP
023A                  00479 _START
023A   04A3           00480         BLOCK1
023B   0912           00481         CALL            RECEIVE_BIT
023C   05A3           00482         BLOCK2

⌨️ 快捷键说明

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