睡眠风→自然风.asm

来自「MODE_BIT_OUT 功能:睡眠风→自然风 标志位BIT 0.1」· 汇编 代码 · 共 78 行

ASM
78 行
字号
;--------------------------------
; MODE_BIT_OUT
;功能:睡眠风→自然风  标志位BIT 0.1
;--------------------------------
MODE_CONVERT MOVWF    PC           ;  从下往上取值
TABLE_SLEEP  RETLW    1
             RETLW    0            ;  L
             RETLW    1            ;  H
             RETLW    0            ;  L
             RETLW    2            ;  M
             RETLW    1
             RETLW    0
             RETLW    1
             RETLW    0
TABLE_NATUER RETLW    2
             RETLW    0
             RETLW    1
             RETLW    2
             RETLW    0
             RETLW    1
             RETLW    0
             RETLW    2
             RETLW    1
             RETLW    2
             RETLW    1
             RETLW    4
             RETLW    1
MODE_BIT_OUT BTFSS    KEYIN,1     ;***
             GOTO     MODE_SLEEP
MODE_BIT     BTFSS    BIT,0                   ; 置标志
             GOTO     MO_LOOP0
             BCF      BIT,0
             CLRF     SPEED_BIT
             BSF      SPEED_BIT,1
             GOTO     MODE_SLEEP
MO_LOOP0     BTFSS    BIT,1
             GOTO     MO_LOOP1
             BCF      BIT,1
             BSF      BIT,0
             MOVLW    0AH
             MOVWF     MODE_DELAY
             MOVLW    0CH
             MOVWF     TABADD
             GOTO     MODE_SLEEP
MO_LOOP1     BSF      BIT,1
             MOVLW    10H
             MOVWF     MODE_DELAY
             MOVLW    13H
             MOVWF     TABADD

MODE_SLEEP   BTFSS    BIT,1                   ; TABLE→W
             GOTO     MODE_NATUER
             MOVLW    TABLE_SLEEP
             GOTO     EM_CONVERT
MODE_NATUER  BTFSS    BIT,0
             RETLW    0
             MOVLW    TABLE_NATUER

EM_CONVERT   ADDWF     TABADD,W               ; 查表
             CALL     MODE_CONVERT
             MOVWF    SPEED_BIT
             BTFSS    BIT2,0
             RETLW    0
             DECFSZ   MODE_DELAY,1
             RETLW    0
             BTFSC    BIT,0
             MOVLW    0AH
             BTFSC    BIT,1
             MOVLW    10H
             MOVWF    MODE_DELAY
             DECFSZ   TABADD,1
             RETLW    0
             BTFSC    BIT,0
             MOVLW    0CH
             BTFSC    BIT,1
             MOVLW    13H
             MOVWF    TABADD
             RETLW    0

⌨️ 快捷键说明

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