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

📄 mtel.lst

📁 cc2430讀取短地址程式
💻 LST
📖 第 1 页 / 共 5 页
字号:
    259          #if defined (ZTOOL_P1) || defined (ZTOOL_P2)
    260            if ( events & MT_ZTOOL_SERIAL_RCV_BUFFER_FULL )
   \   000013   EE           MOV     A,R6
   \   000014   5404         ANL     A,#0x4
   \   000016   6034         JZ      ??MT_ProcessEvent_2
    261            {
    262              // Do sometype of error processing
    263              MT_SendErrorNotification(RECEIVE_BUFFER_FULL);
   \   000018                ; Setup parameters for call to function MT_SendErrorNotification
   \   000018   7902         MOV     R1,#0x2
   \   00001A   90....       MOV     DPTR,#(MT_SendErrorNotification & 0xffff)
   \   00001D   74..         MOV     A,#((MT_SendErrorNotification >> 16) & 0xff)
   \   00001F   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
    264          
    265              // Return unproccessed events
    266              return (events ^ MT_ZTOOL_SERIAL_RCV_BUFFER_FULL);
   \   000022   7404         MOV     A,#0x4
   \   000024   6E           XRL     A,R6
   \   000025   FA           MOV     R2,A
   \   000026   EF           MOV     A,R7
   \                     ??MT_ProcessEvent_3:
   \   000027   FB           MOV     R3,A
   \   000028   8026         SJMP    ??MT_ProcessEvent_4
    267            }
   \                     ??MT_ProcessEvent_5:
   \   00002A                ; Setup parameters for call to function MT_ProcessCommand
   \   00002A   90....       MOV     DPTR,#(MT_ProcessCommand & 0xffff)
   \   00002D   74..         MOV     A,#((MT_ProcessCommand >> 16) & 0xff)
   \   00002F   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
   \                     ??MT_ProcessEvent_1:
   \   000032                ; Setup parameters for call to function osal_msg_receive
   \   000032   90....       MOV     DPTR,#MT_TaskID
   \   000035   E0           MOVX    A,@DPTR
   \   000036   F9           MOV     R1,A
   \   000037   90....       MOV     DPTR,#(osal_msg_receive & 0xffff)
   \   00003A   74..         MOV     A,#((osal_msg_receive >> 16) & 0xff)
   \   00003C   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
   \   00003F   EA           MOV     A,R2
   \   000040   7001         JNZ     ??MT_ProcessEvent_6
   \   000042   EB           MOV     A,R3
   \                     ??MT_ProcessEvent_6:
   \   000043   70E5         JNZ     ??MT_ProcessEvent_5
   \   000045   EE           MOV     A,R6
   \   000046   FA           MOV     R2,A
   \   000047   7480         MOV     A,#-0x80
   \   000049   6F           XRL     A,R7
   \   00004A   80DB         SJMP    ??MT_ProcessEvent_3
    268          #endif
    269          
    270            // Discard or make more handlers
    271            return 0;
   \                     ??MT_ProcessEvent_2:
   \   00004C   7A00         MOV     R2,#0x0
   \   00004E   7B00         MOV     R3,#0x0
   \                     ??MT_ProcessEvent_4:
   \   000050   02....       LJMP    ??Subroutine17_1 & 0xFFFF
    272          
    273          } /* MT_ProcessEvent() */
    274          
    275          #if defined (ZTOOL_P1) || defined (ZTOOL_P2)
    276          /*********************************************************************
    277           * @fn      MT_BuildSPIMsg
    278           *
    279           * @brief
    280           *
    281           *   Format an SPI message.
    282           *
    283           * @param   UINT16 cmd - command id
    284           * @param   byte *msg - pointer to message buffer
    285           * @param   byte dataLen - length of data field
    286           * @param   byte *pData - pointer to data field
    287           *
    288           * @return  void
    289           */

   \                                 In segment BANKED_CODE, align 1, keep-with-next
    290          void MT_BuildSPIMsg( UINT16 cmd, byte *msg, byte dataLen, byte *pData )
   \                     MT_BuildSPIMsg:
    291          {
   \   000000   74F2         MOV     A,#-0xe
   \   000002   12....       LCALL   ?BANKED_ENTER_XDATA
   \   000005                ; Saved register size: 14
   \   000005                ; Auto size: 0
   \   000005   EC           MOV     A,R4
   \   000006   FE           MOV     R6,A
   \   000007   ED           MOV     A,R5
   \   000008   FF           MOV     R7,A
   \   000009   89..         MOV     ?V0 + 3,R1
   \   00000B   740E         MOV     A,#0xe
   \   00000D   12....       LCALL   ?XSTACK_DISP0_8
   \   000010   E0           MOVX    A,@DPTR
   \   000011   F5..         MOV     ?V0 + 0,A
   \   000013   A3           INC     DPTR
   \   000014   E0           MOVX    A,@DPTR
   \   000015   F5..         MOV     ?V0 + 1,A
    292            byte *msgPtr;
    293          
    294            *msg++ = SOP_VALUE;
   \   000017   7402         MOV     A,#0x2
   \   000019   8E82         MOV     DPL,R6
   \   00001B   8F83         MOV     DPH,R7
   \   00001D   F0           MOVX    @DPTR,A
   \   00001E   A3           INC     DPTR
   \   00001F   AE82         MOV     R6,DPL
   \   000021   AF83         MOV     R7,DPH
    295          
    296            msgPtr = msg;
   \   000023   8E..         MOV     ?V0 + 4,R6
   \   000025   8F..         MOV     ?V0 + 5,R7
    297          
    298            *msg++ = (byte)(HI_UINT16( cmd ));
   \   000027   EB           MOV     A,R3
   \   000028   F0           MOVX    @DPTR,A
   \   000029   A3           INC     DPTR
    299            *msg++ = (byte)(LO_UINT16( cmd ));
   \   00002A   EA           MOV     A,R2
   \   00002B   F0           MOVX    @DPTR,A
   \   00002C   A3           INC     DPTR
   \   00002D   0E           INC     R6
   \   00002E   0E           INC     R6
   \   00002F   AF83         MOV     R7,DPH
    300          
    301            if ( pData )
   \   000031   E5..         MOV     A,?V0 + 0
   \   000033   7002         JNZ     ??MT_BuildSPIMsg_0
   \   000035   E5..         MOV     A,?V0 + 1
   \                     ??MT_BuildSPIMsg_0:
   \   000037   602E         JZ      ??MT_BuildSPIMsg_1
    302            {
    303              *msg++ = dataLen;
   \   000039   E9           MOV     A,R1
   \   00003A   F0           MOVX    @DPTR,A
    304          
    305              msg = osal_memcpy( msg, pData, dataLen );
   \   00003B                ; Setup parameters for call to function osal_memcpy
   \   00003B   75..00       MOV     ?V0 + 2,#0x0
   \   00003E   78..         MOV     R0,#?V0 + 0
   \   000040   12....       LCALL   ?PUSH_XSTACK_I_THREE
   \   000043   E9           MOV     A,R1
   \   000044   FC           MOV     R4,A
   \   000045   7D00         MOV     R5,#0x0
   \   000047   8E82         MOV     DPL,R6
   \   000049   8F83         MOV     DPH,R7
   \   00004B   A3           INC     DPTR
   \   00004C   AA82         MOV     R2,DPL
   \   00004E   AB83         MOV     R3,DPH
   \   000050   90....       MOV     DPTR,#(osal_memcpy & 0xffff)
   \   000053   74..         MOV     A,#((osal_memcpy >> 16) & 0xff)
   \   000055   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
   \   000058   7403         MOV     A,#0x3
   \   00005A   12....       LCALL   ?DEALLOC_XSTACK8
   \   00005D   8A..         MOV     ?V0 + 0,R2
   \   00005F   8B..         MOV     ?V0 + 1,R3
   \   000061   AE..         MOV     R6,?V0 + 0
   \   000063   AF..         MOV     R7,?V0 + 1
   \   000065   8006         SJMP    ??MT_BuildSPIMsg_2
    306            }
    307            else
    308              *msg++ = 0;
   \                     ??MT_BuildSPIMsg_1:
   \   000067   E4           CLR     A
   \   000068   F0           MOVX    @DPTR,A
   \   000069   A3           INC     DPTR
   \   00006A   0E           INC     R6
   \   00006B   AF83         MOV     R7,DPH
    309          
    310            *msg = SPIMgr_CalcFCS( msgPtr, (byte)(3 + dataLen) );
   \                     ??MT_BuildSPIMsg_2:
   \   00006D                ; Setup parameters for call to function SPIMgr_CalcFCS
   \   00006D   7403         MOV     A,#0x3
   \   00006F   25..         ADD     A,?V0 + 3
   \   000071   F9           MOV     R1,A
   \   000072   AA..         MOV     R2,?V0 + 4
   \   000074   AB..         MOV     R3,?V0 + 5
   \   000076   90....       MOV     DPTR,#(SPIMgr_CalcFCS & 0xffff)
   \   000079   74..         MOV     A,#((SPIMgr_CalcFCS >> 16) & 0xff)
   \   00007B   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
   \   00007E   E9           MOV     A,R1
   \   00007F   8E82         MOV     DPL,R6
   \   000081   8F83         MOV     DPH,R7
   \   000083   F0           MOVX    @DPTR,A
    311          }
   \   000084   02....       LJMP    ??Subroutine18_1 & 0xFFFF

   \                                 In segment BANKED_CODE, align 1, keep-with-next
   \                     ?Subroutine18:
   \   000000   7401         MOV     A,#0x1
   \                     ??Subroutine18_0:
   \   000002   12....       LCALL   ?DEALLOC_XSTACK8
   \                     ??Subroutine18_1:
   \   000005   7F06         MOV     R7,#0x6
   \   000007   02....       LJMP    ?BANKED_LEAVE_XDATA
    312          #endif
    313          
    314          #if defined (ZTOOL_P1) || defined (ZTOOL_P2)
    315          /*********************************************************************
    316           * @fn      MT_BuildAndSendZToolResponse
    317           *
    318           * @brief
    319           *
    320           *   Build and send a ZTOOL msg
    321           *
    322           * @param   byte err
    323           *
    324           * @return  void
    325           */

   \                                 In segment BANKED_CODE, align 1, keep-with-next
    326          void MT_BuildAndSendZToolResponse( byte msgLen, uint16 cmd,
   \                     MT_BuildAndSendZToolResponse:
    327                                             byte dataLen, byte *pData )
    328          {
   \   000000   74F0         MOV     A,#-0x10
   \   000002   12....       LCALL   ?BANKED_ENTER_XDATA
   \   000005                ; Saved register size: 16
   \   000005                ; Auto size: 0
   \   000005   89..         MOV     ?V0 + 2,R1
   \   000007   8A..         MOV     ?V0 + 6,R2
   \   000009   8B..         MOV     ?V0 + 7,R3
   \   00000B   8C..         MOV     ?V0 + 3,R4
   \   00000D   7410         MOV     A,#0x10
   \   00000F   12....       LCALL   ?XSTACK_DISP0_8
   \   000012   E0           MOVX    A,@DPTR
   \   000013   F5..         MOV     ?V0 + 0,A
   \   000015   A3           INC     DPTR
   \   000016   E0           MOVX    A,@DPTR
   \   000017   F5..         MOV     ?V0 + 1,A
    329            byte *msg_ptr;
    330          
    331            // Get a message buffer to build response message
    332            msg_ptr = osal_mem_alloc( msgLen );
   \   000019                ; Setup parameters for call to function osal_mem_alloc
   \   000019   E9           MOV     A,R1
   \   00001A   FA           MOV     R2,A
   \   00001B   7B00         MOV     R3,#0x0
   \   00001D   90....       MOV     DPTR,#(osal_mem_alloc & 0xffff)
   \   000020   74..         MOV     A,#((osal_mem_alloc >> 16) & 0xff)
   \   000022   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
   \   000025   8A..         MOV     ?V0 + 4,R2
   \   000027   8B..         MOV     ?V0 + 5,R3
   \   000029   AE..         MOV     R6,?V0 + 4
   \   00002B   AF..         MOV     R7,?V0 + 5
    333            if ( msg_ptr )
   \   00002D   EE           MOV     A,R6
   \   00002E   7001         JNZ     ??MT_BuildAndSendZToolResponse_0
   \   000030   EF           MOV     A,R7
   \                     ??MT_BuildAndSendZToolResponse_0:
   \   000031   603A         JZ      ??MT_BuildAndSendZToolResponse_1
    334            {
    335          #ifdef SPI_MGR_DEFAULT_PORT
    336              MT_BuildSPIMsg( cmd, msg_ptr, dataLen, pData );
   \   000033                ; Setup parameters for call to function MT_BuildSPIMsg
   \   000033   78..         MOV     R0,#?V0 + 0
   \   000035   12....       LCALL   ?PUSH_XSTACK_I_TWO
   \   000038   A9..         MOV     R1,?V0 + 3
   \   00003A   EE           MOV     A,R6
   \   00003B   FC           MOV     R4,A
   \   00003C   EF           MOV     A,R7
   \   00003D   FD           MOV     R5,A
   \   00003E   AA..         MOV     R2,?V0 + 6
   \   000040   AB..         MOV     R3,?V0 + 7

⌨️ 快捷键说明

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