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

📄 node.lst

📁 zigbee location examples
💻 LST
📖 第 1 页 / 共 4 页
字号:
   \                     ??NodeDataIndication_2:
   \   000040   7401         MOV     A,#0x1
   \   000042   90....       MOV     DPTR,#blinkLed
   \   000045   8031         SJMP    ??NodeDataIndication_6
     79                break;
     80             // case PACKET_TYPE_BLIND_NODE_POSITION:
     81             case PACKET_TYPE_BLIND_NODE_REQ_SIGNAL: /* only sent to ref node   */
     82             case PACKET_TYPE_REF_NODE_POSITION:     /* only sent to blind node */
     83                if(BUFFER_EMPTY()){
   \                     ??NodeDataIndication_0:
   \   000047   90....       MOV     DPTR,#buffer
   \   00004A   E0           MOVX    A,@DPTR
   \   00004B   702C         JNZ     ??NodeDataIndication_3
     84                   msgReceived = TRUE;
   \   00004D   7401         MOV     A,#0x1
   \   00004F   90....       MOV     DPTR,#msgReceived
   \   000052   F0           MOVX    @DPTR,A
     85                   memcpy(&buffer.b, pMDI, sizeof(MCPS_DATA_INDICATION));
   \   000053                ; Setup parameters for call to function memcpy
   \   000053   75..90       MOV     ?V0 + 0,#-0x70
   \   000056   75..00       MOV     ?V0 + 1,#0x0
   \   000059   78..         MOV     R0,#?V0 + 0
   \   00005B   12....       LCALL   ?PUSH_XSTACK_I_TWO
   \   00005E   EA           MOV     A,R2
   \   00005F   FC           MOV     R4,A
   \   000060   EB           MOV     A,R3
   \   000061   FD           MOV     R5,A
   \   000062   7A..         MOV     R2,#((buffer + 1) & 0xff)
   \   000064   7B..         MOV     R3,#(((buffer + 1) >> 8) & 0xff)
   \   000066   90....       MOV     DPTR,#(memcpy & 0xffff)
   \   000069   74..         MOV     A,#((memcpy >> 16) & 0xff)
   \   00006B   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
   \   00006E   7402         MOV     A,#0x2
   \   000070   12....       LCALL   ?DEALLOC_XSTACK8
     86                   SET_BUFFER_FILLED();
   \   000073   7401         MOV     A,#0x1
   \   000075   90....       MOV     DPTR,#buffer
   \                     ??NodeDataIndication_6:
   \   000078   F0           MOVX    @DPTR,A
     87                }
     88                break;
     89             default:
     90                break;
     91             }
     92          }
   \                     ??NodeDataIndication_3:
   \   000079   02....       LJMP    ??Subroutine0_0 & 0xFFFF

   \                                 In segment BANKED_CODE, align 1, keep-with-next
   \                     ?Subroutine0:
   \   000000   12....       LCALL   ?DEALLOC_XSTACK8
   \                     ??Subroutine0_0:
   \   000003   7F02         MOV     R7,#0x2
   \   000005   02....       LJMP    ?BANKED_LEAVE_XDATA
     93          
     94          /******************************************************************************
     95          *
     96          * Sleep timer interrupt handler
     97          ******************************************************************************/
     98          #pragma vector=ST_VECTOR

   \                                 In segment NEAR_CODE, align 1, keep-with-next
     99          __near_func __interrupt void ST_IRQ(void){
   \                     ST_IRQ:
   \   000000   C0E0         PUSH    A
   \   000002   C0D0         PUSH    PSW
   \   000004   E8           MOV     A,R0
   \   000005   C0E0         PUSH    A
   \   000007   E9           MOV     A,R1
   \   000008   C0E0         PUSH    A
   \   00000A   EA           MOV     A,R2
   \   00000B   C0E0         PUSH    A
   \   00000D   EB           MOV     A,R3
   \   00000E   C0E0         PUSH    A
   \   000010   EC           MOV     A,R4
   \   000011   C0E0         PUSH    A
   \   000013   ED           MOV     A,R5
   \   000014   C0E0         PUSH    A
   \   000016   C082         PUSH    DPL
   \   000018   C083         PUSH    DPH
   \   00001A   C0F0         PUSH    B
   \   00001C                ; Saved register size: 11
   \   00001C                ; Auto size: 0
    100             if (nodeType == REF_NODE){
   \   00001C   90....       MOV     DPTR,#nodeType
   \   00001F   E0           MOVX    A,@DPTR
   \   000020   7007         JNZ     ??ST_IRQ_0
    101                 ST_IRQ_RefNode();
   \   000022                ; Setup parameters for call to function ST_IRQ_RefNode
   \   000022   90....       MOV     DPTR,#(ST_IRQ_RefNode & 0xffff)
   \   000025   74..         MOV     A,#((ST_IRQ_RefNode >> 16) & 0xff)
   \   000027   8005         SJMP    ??ST_IRQ_1
    102             }
    103             else{
    104                ST_IRQ_BlindNode();
   \                     ??ST_IRQ_0:
   \   000029                ; Setup parameters for call to function ST_IRQ_BlindNode
   \   000029   90....       MOV     DPTR,#(ST_IRQ_BlindNode & 0xffff)
   \   00002C   74..         MOV     A,#((ST_IRQ_BlindNode >> 16) & 0xff)
   \                     ??ST_IRQ_1:
   \   00002E   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
    105             }
    106          }
   \   000031   D0F0         POP     B
   \   000033   D083         POP     DPH
   \   000035   D082         POP     DPL
   \   000037   D0E0         POP     A
   \   000039   FD           MOV     R5,A
   \   00003A   D0E0         POP     A
   \   00003C   FC           MOV     R4,A
   \   00003D   D0E0         POP     A
   \   00003F   FB           MOV     R3,A
   \   000040   D0E0         POP     A
   \   000042   FA           MOV     R2,A
   \   000043   D0E0         POP     A
   \   000045   F9           MOV     R1,A
   \   000046   D0E0         POP     A
   \   000048   F8           MOV     R0,A
   \   000049   D0D0         POP     PSW
   \   00004B   D0E0         POP     A
   \   00004D   32           RETI
    107          
    108          
    109          /******************************************************************************
    110          *
    111          * Send packet contains x, y, z
    112          ******************************************************************************/

   \                                 In segment BANKED_CODE, align 1, keep-with-next
    113          void SendPosition(WORD destAddr){
   \                     SendPosition:
   \   000000   C082         PUSH    DPL
   \   000002   C083         PUSH    DPH
   \   000004                ; Saved register size: 2
   \   000004                ; Auto size: 6
   \   000004   74FA         MOV     A,#-0x6
   \   000006   12....       LCALL   ?ALLOC_XSTACK8
    114             BYTE data[PACKET_INDEX_Z + 1];
    115          
    116             if (nodeType == REF_NODE){
   \   000009   90....       MOV     DPTR,#nodeType
   \   00000C   E0           MOVX    A,@DPTR
   \   00000D   7004         JNZ     ??SendPosition_0
    117                data[PACKET_INDEX_TYPE] = PACKET_TYPE_REF_NODE_POSITION;
   \   00000F   7412         MOV     A,#0x12
   \   000011   8002         SJMP    ??SendPosition_1
    118             }
    119             else{
    120                data[PACKET_INDEX_TYPE] = PACKET_TYPE_BLIND_NODE_POSITION;
   \                     ??SendPosition_0:
   \   000013   7410         MOV     A,#0x10
   \                     ??SendPosition_1:
   \   000015   85..82       MOV     DPL,?XSP + 0
   \   000018   85..83       MOV     DPH,?XSP + 1
   \   00001B   F0           MOVX    @DPTR,A
    121             }
    122          
    123             data[PACKET_INDEX_X_H] = HIBYTE(x);
   \   00001C   90....       MOV     DPTR,#(x + 1)
   \   00001F   E0           MOVX    A,@DPTR
   \   000020   C0E0         PUSH    A
   \   000022   7401         MOV     A,#0x1
   \   000024   12....       LCALL   ?XSTACK_DISP0_8
   \   000027   D0E0         POP     A
   \   000029   F0           MOVX    @DPTR,A
    124             data[PACKET_INDEX_X_L] = LOBYTE(x);
   \   00002A   90....       MOV     DPTR,#x
   \   00002D   E0           MOVX    A,@DPTR
   \   00002E   C0E0         PUSH    A
   \   000030   7402         MOV     A,#0x2
   \   000032   12....       LCALL   ?XSTACK_DISP0_8
   \   000035   D0E0         POP     A
   \   000037   F0           MOVX    @DPTR,A
    125             data[PACKET_INDEX_Y_H] = HIBYTE(y);
   \   000038   90....       MOV     DPTR,#(y + 1)
   \   00003B   E0           MOVX    A,@DPTR
   \   00003C   C0E0         PUSH    A
   \   00003E   7403         MOV     A,#0x3
   \   000040   12....       LCALL   ?XSTACK_DISP0_8
   \   000043   D0E0         POP     A
   \   000045   F0           MOVX    @DPTR,A
    126             data[PACKET_INDEX_Y_L] = LOBYTE(y);
   \   000046   90....       MOV     DPTR,#y
   \   000049   E0           MOVX    A,@DPTR
   \   00004A   C0E0         PUSH    A
   \   00004C   7404         MOV     A,#0x4
   \   00004E   12....       LCALL   ?XSTACK_DISP0_8
   \   000051   D0E0         POP     A
   \   000053   F0           MOVX    @DPTR,A
    127             data[PACKET_INDEX_Z]   = z;
   \   000054   90....       MOV     DPTR,#z
   \   000057   E0           MOVX    A,@DPTR
   \   000058   C0E0         PUSH    A
   \   00005A   7405         MOV     A,#0x5
   \   00005C   12....       LCALL   ?XSTACK_DISP0_8
   \   00005F   D0E0         POP     A
   \   000061   F0           MOVX    @DPTR,A
    128          
    129             DataRequest(destAddr, PACKET_INDEX_Z + 1, data);
   \   000062                ; Setup parameters for call to function DataRequest
   \   000062   85..82       MOV     DPL,?XSP + 0
   \   000065   85..83       MOV     DPH,?XSP + 1
   \   000068   AC82         MOV     R4,DPL
   \   00006A   AD83         MOV     R5,DPH
   \   00006C   7906         MOV     R1,#0x6
   \   00006E   90....       MOV     DPTR,#(DataRequest & 0xffff)
   \   000071   74..         MOV     A,#((DataRequest >> 16) & 0xff)
   \   000073   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
    130          }
   \   000076   7406         MOV     A,#0x6
   \   000078   12....       LCALL   ?DEALLOC_XSTACK8
   \   00007B   D083         POP     DPH
   \   00007D   D082         POP     DPL
   \   00007F   02....       LJMP    ?BRET
    131          
    132          /******************************************************************************
    133          *
    134          * Send a text string to the PC interface, input as printf.
    135          * The string will be shown in the packet sniffer.
    136          ******************************************************************************/

   \                                 In segment BANKED_CODE, align 1, keep-with-next
    137          void SendText(char *format, ...){
   \                     SendText:
   \   000000   74F6         MOV     A,#-0xa
   \   000002   12....       LCALL   ?BANKED_ENTER_XDATA
   \   000005                ; Saved register size: 10
   \   000005                ; Auto size: 130
   \   000005   747E         MOV     A,#0x7e
   \   000007   12....       LCALL   ?ALLOC_XSTACK8
    138             BYTE sendBuffer[128];
    139             va_list ap;
    140             UINT8 nbrOfChars;

⌨️ 快捷键说明

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