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

📄 hal_led.lst

📁 cc2430应用实例
💻 LST
📖 第 1 页 / 共 5 页
字号:
    306                    {
    307                      wait = sts->next - time;  /* Time left */
   \                     ??HalLedUpdate_4:
   \   0001B0   7406         MOV     A,#0x6
   \   0001B2   12....       LCALL   ?XSTACK_DISP0_8
   \   0001B5   78..         MOV     R0,#?V0 + 4
   \   0001B7   12....       LCALL   ?L_MOV_X
   \   0001BA   E5..         MOV     A,?V0 + 0
   \   0001BC   C3           CLR     C
   \   0001BD   95..         SUBB    A,?V0 + 4
   \   0001BF   FE           MOV     R6,A
   \   0001C0   E5..         MOV     A,?V0 + 1
   \   0001C2   95..         SUBB    A,?V0 + 5
   \   0001C4   FF           MOV     R7,A
    308                    }
    309          
    310                    if (!next || ( wait && (wait < next) ))
   \                     ??HalLedUpdate_8:
   \   0001C5   7404         MOV     A,#0x4
   \   0001C7   12....       LCALL   ?XSTACK_DISP0_8
   \   0001CA   E0           MOVX    A,@DPTR
   \   0001CB   7002         JNZ     ??HalLedUpdate_11
   \   0001CD   A3           INC     DPTR
   \   0001CE   E0           MOVX    A,@DPTR
   \                     ??HalLedUpdate_11:
   \   0001CF   6017         JZ      ??HalLedUpdate_12
   \   0001D1   EE           MOV     A,R6
   \   0001D2   7001         JNZ     ??HalLedUpdate_13
   \   0001D4   EF           MOV     A,R7
   \                     ??HalLedUpdate_13:
   \   0001D5   601B         JZ      ??HalLedUpdate_3
   \   0001D7   7404         MOV     A,#0x4
   \   0001D9   12....       LCALL   ?XSTACK_DISP0_8
   \   0001DC   E0           MOVX    A,@DPTR
   \   0001DD   F8           MOV     R0,A
   \   0001DE   A3           INC     DPTR
   \   0001DF   E0           MOVX    A,@DPTR
   \   0001E0   F9           MOV     R1,A
   \   0001E1   C3           CLR     C
   \   0001E2   EE           MOV     A,R6
   \   0001E3   98           SUBB    A,R0
   \   0001E4   EF           MOV     A,R7
   \   0001E5   99           SUBB    A,R1
   \   0001E6   500A         JNC     ??HalLedUpdate_3
    311                    {
    312                      next = wait;
   \                     ??HalLedUpdate_12:
   \   0001E8   7404         MOV     A,#0x4
   \   0001EA   12....       LCALL   ?XSTACK_DISP0_8
   \   0001ED   EE           MOV     A,R6
   \   0001EE   F0           MOVX    @DPTR,A
   \   0001EF   A3           INC     DPTR
   \   0001F0   EF           MOV     A,R7
   \   0001F1   F0           MOVX    @DPTR,A
    313                    }
    314                  }
    315                  leds ^= led;
   \                     ??HalLedUpdate_3:
   \   0001F2   85..82       MOV     DPL,?XSP + 0
   \   0001F5   85..83       MOV     DPH,?XSP + 1
   \   0001F8   E0           MOVX    A,@DPTR
   \   0001F9   FA           MOV     R2,A
   \   0001FA   7403         MOV     A,#0x3
   \   0001FC   12....       LCALL   ?XSTACK_DISP0_8
   \   0001FF   E0           MOVX    A,@DPTR
   \   000200   6A           XRL     A,R2
   \   000201   F0           MOVX    @DPTR,A
    316                }
    317                led <<= 1;
   \                     ??HalLedUpdate_2:
   \   000202   85..82       MOV     DPL,?XSP + 0
   \   000205   85..83       MOV     DPH,?XSP + 1
   \   000208   E0           MOVX    A,@DPTR
   \   000209   C3           CLR     C
   \   00020A   33           RLC     A
   \   00020B   F0           MOVX    @DPTR,A
    318                sts++;
   \   00020C   7401         MOV     A,#0x1
   \   00020E   12....       LCALL   ?XSTACK_DISP0_8
   \   000211   E0           MOVX    A,@DPTR
   \   000212   2409         ADD     A,#0x9
   \   000214   F8           MOV     R0,A
   \   000215   A3           INC     DPTR
   \   000216   E0           MOVX    A,@DPTR
   \   000217   3400         ADDC    A,#0x0
   \   000219   F9           MOV     R1,A
   \   00021A   7401         MOV     A,#0x1
   \   00021C   12....       LCALL   ?XSTACK_DISP0_8
   \   00021F   E8           MOV     A,R0
   \   000220   F0           MOVX    @DPTR,A
   \   000221   A3           INC     DPTR
   \   000222   E9           MOV     A,R1
   \   000223   F0           MOVX    @DPTR,A
    319              }
   \   000224   7403         MOV     A,#0x3
   \   000226   12....       LCALL   ?XSTACK_DISP0_8
   \   000229   E0           MOVX    A,@DPTR
   \   00022A   6003         JZ      $+5
   \   00022C   02....       LJMP    ??HalLedUpdate_1 & 0xFFFF
    320          
    321              if (next)
   \   00022F   7404         MOV     A,#0x4
   \   000231   12....       LCALL   ?XSTACK_DISP0_8
   \   000234   E0           MOVX    A,@DPTR
   \   000235   7002         JNZ     ??HalLedUpdate_14
   \   000237   A3           INC     DPTR
   \   000238   E0           MOVX    A,@DPTR
   \                     ??HalLedUpdate_14:
   \   000239   6016         JZ      ??HalLedUpdate_0
    322              {
    323                osal_start_timer (HAL_LED_BLINK_EVENT, next);   /* Schedule event */
   \   00023B                ; Setup parameters for call to function osal_start_timer
   \   00023B   7404         MOV     A,#0x4
   \   00023D   12....       LCALL   ?XSTACK_DISP0_8
   \   000240   E0           MOVX    A,@DPTR
   \   000241   FC           MOV     R4,A
   \   000242   A3           INC     DPTR
   \   000243   E0           MOVX    A,@DPTR
   \   000244   FD           MOV     R5,A
   \   000245   7A02         MOV     R2,#0x2
   \   000247   7B00         MOV     R3,#0x0
   \   000249   90....       MOV     DPTR,#(osal_start_timer & 0xffff)
   \   00024C   74..         MOV     A,#((osal_start_timer >> 16) & 0xff)
   \   00024E   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
    324              }
    325            }
    326          }
   \                     ??HalLedUpdate_0:
   \   000251   740A         MOV     A,#0xa
   \   000253   02....       LJMP    ?Subroutine11 & 0xFFFF

   \                                 In segment BANKED_CODE, align 1, keep-with-next
   \                     ?Subroutine7:
   \   000000   A3           INC     DPTR
   \   000001   E0           MOVX    A,@DPTR
   \   000002   F583         MOV     DPH,A
   \   000004   8882         MOV     DPL,R0
   \   000006   A3           INC     DPTR
   \   000007   A3           INC     DPTR
   \   000008   E0           MOVX    A,@DPTR
   \   000009   22           RET

   \                                 In segment BANKED_CODE, align 1, keep-with-next
   \                     ?Subroutine5:
   \   000000   12....       LCALL   ?Subroutine8 & 0xFFFF
   \                     ??CrossCallReturnLabel_17:
   \   000003   22           RET

   \                                 In segment BANKED_CODE, align 1, keep-with-next
   \                     ?Subroutine8:
   \   000000   E0           MOVX    A,@DPTR
   \   000001   F8           MOV     R0,A
   \                     ??Subroutine8_0:
   \   000002   A3           INC     DPTR
   \   000003   E0           MOVX    A,@DPTR
   \   000004   F583         MOV     DPH,A
   \   000006   8882         MOV     DPL,R0
   \   000008   E0           MOVX    A,@DPTR
   \   000009   22           RET

   \                                 In segment BANKED_CODE, align 1, keep-with-next
   \                     ?Subroutine4:
   \   000000   12....       LCALL   ?Subroutine8 & 0xFFFF
   \                     ??CrossCallReturnLabel_16:
   \   000003   A2E1         MOV     C,0xE0 /* A   */.1
   \   000005   22           RET

   \                                 In segment BANKED_CODE, align 1, keep-with-next
   \                     ?Subroutine3:
   \   000000   85..82       MOV     DPL,?XSP + 0
   \   000003   85..83       MOV     DPH,?XSP + 1
   \                     ??Subroutine3_0:
   \   000006   E0           MOVX    A,@DPTR
   \   000007   F9           MOV     R1,A
   \   000008   90....       MOV     DPTR,#(HalLedOnOff & 0xffff)
   \   00000B   74..         MOV     A,#((HalLedOnOff >> 16) & 0xff)
   \   00000D   22           RET

   \                                 In segment BANKED_CODE, align 1, keep-with-next
   \                     ?Subroutine2:
   \   000000   E0           MOVX    A,@DPTR
   \   000001   F8           MOV     R0,A
   \   000002   12....       LCALL   ?Subroutine9 & 0xFFFF
   \                     ??CrossCallReturnLabel_19:
   \   000005   A3           INC     DPTR
   \   000006   A3           INC     DPTR
   \   000007   78..         MOV     R0,#?V0 + 0
   \   000009   22           RET

   \                                 In segment BANKED_CODE, align 1, keep-with-next
   \                     ?Subroutine9:
   \   000000   A3           INC     DPTR
   \   000001   E0           MOVX    A,@DPTR
   \   000002   F583         MOV     DPH,A
   \   000004   8882         MOV     DPL,R0
   \   000006   A3           INC     DPTR
   \   000007   A3           INC     DPTR
   \   000008   A3           INC     DPTR
   \   000009   22           RET
    327          
    328          /***************************************************************************************************
    329           * @fn      HalLedOnOff
    330           *
    331           * @brief   Turns specified LED ON or OFF
    332           *
    333           * @param   leds - LED bit mask
    334           *          mode - LED_ON,LED_OFF,
    335           *
    336           * @return  none
    337           ***************************************************************************************************/

   \                                 In segment BANKED_CODE, align 1, keep-with-next
    338          void HalLedOnOff (uint8 leds, uint8 mode)
   \                     HalLedOnOff:
    339          {
   \   000000   C082         PUSH    DPL
   \   000002   C083         PUSH    DPH
   \   000004                ; Saved register size: 2
   \   000004                ; Auto size: 0
    340            if (leds & HAL_LED_1)
   \   000004   E9           MOV     A,R1
   \   000005   A2E0         MOV     C,0xE0 /* A   */.0
   \   000007   500B         JNC     ??HalLedOnOff_0
    341            {
    342              if (mode == HAL_LED_MODE_ON)
   \   000009   7401         MOV     A,#0x1
   \   00000B   6A           XRL     A,R2
   \   00000C   7004         JNZ     ??HalLedOnOff_1
    343              {
    344                HAL_TURN_ON_LED1();
   \   00000E   C290         CLR     0x90.0
   \   000010   8002         SJMP    ??HalLedOnOff_0
    345              }
    346              else
    347              {
    348                HAL_TURN_OFF_LED1();
   \                     ??HalLedOnOff_1:
   \   000012   D290         SETB    0x90.0
    349              }
    350            }
    351          
    352            if (leds & HAL_LED_2)
   \                     ??HalLedOnOff_0:
   \   000014   E9           MOV     A,R1
   \   000015   A2E1         MOV     C,0xE0 /* A   */.1
   \   000017   500B         JNC     ??HalLedOnOff_2
    353            {
    354        

⌨️ 快捷键说明

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