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

📄 zmac.lst

📁 cc2430应用实例
💻 LST
📖 第 1 页 / 共 5 页
字号:
   \   000026   02....       LJMP    ??ZMacScanReq_2
    299            }
    300          
    301            if (pData->ScanType != ZMAC_ORPHAN_SCAN)
   \                     ??ZMacScanReq_1:
   \   000029   8E82         MOV     DPL,R6
   \   00002B   8F83         MOV     DPH,R7
   \   00002D   A3           INC     DPTR
   \   00002E   A3           INC     DPTR
   \   00002F   A3           INC     DPTR
   \   000030   A3           INC     DPTR
   \   000031   E0           MOVX    A,@DPTR
   \   000032   6403         XRL     A,#0x3
   \   000034   7003         JNZ     $+5
   \   000036   02....       LJMP    ??ZMacScanReq_3
    302            {
    303              /* Allocate memory depends on the scan type */
    304              if (pData->ScanType == ZMAC_ED_SCAN)
   \   000039   8E82         MOV     DPL,R6
   \   00003B   8F83         MOV     DPH,R7
   \   00003D   A3           INC     DPTR
   \   00003E   A3           INC     DPTR
   \   00003F   A3           INC     DPTR
   \   000040   A3           INC     DPTR
   \   000041   E0           MOVX    A,@DPTR
   \   000042   7051         JNZ     ??ZMacScanReq_4
    305              {
    306                if ((ZMac_ScanBuf = osal_mem_alloc(ZMAC_ED_SCAN_MAXCHANNELS)) == NULL)
   \   000044                ; Setup parameters for call to function osal_mem_alloc
   \   000044   7A1B         MOV     R2,#0x1b
   \   000046   7B00         MOV     R3,#0x0
   \   000048   90....       MOV     DPTR,#(osal_mem_alloc & 0xffff)
   \   00004B   74..         MOV     A,#((osal_mem_alloc >> 16) & 0xff)
   \   00004D   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
   \   000050   8A..         MOV     ?V0 + 0,R2
   \   000052   8B..         MOV     ?V0 + 1,R3
   \   000054   A8..         MOV     R0,?V0 + 0
   \   000056   A9..         MOV     R1,?V0 + 1
   \   000058   90....       MOV     DPTR,#ZMac_ScanBuf
   \   00005B   E8           MOV     A,R0
   \   00005C   F0           MOVX    @DPTR,A
   \   00005D   A3           INC     DPTR
   \   00005E   E9           MOV     A,R1
   \   00005F   F0           MOVX    @DPTR,A
   \   000060   E8           MOV     A,R0
   \   000061   7001         JNZ     ??ZMacScanReq_5
   \   000063   E9           MOV     A,R1
   \                     ??ZMacScanReq_5:
   \   000064   7005         JNZ     ??ZMacScanReq_6
    307                {
    308                  return MAC_NO_RESOURCES;
   \                     ??ZMacScanReq_7:
   \   000066   791A         MOV     R1,#0x1a
   \   000068   02....       LJMP    ??ZMacScanReq_2
    309                }
    310                osal_memset(ZMac_ScanBuf, 0, ZMAC_ED_SCAN_MAXCHANNELS);
   \                     ??ZMacScanReq_6:
   \   00006B                ; Setup parameters for call to function osal_memset
   \   00006B   7C1B         MOV     R4,#0x1b
   \   00006D   7D00         MOV     R5,#0x0
   \   00006F   7900         MOV     R1,#0x0
   \   000071   90....       MOV     DPTR,#(osal_memset & 0xffff)
   \   000074   74..         MOV     A,#((osal_memset >> 16) & 0xff)
   \   000076   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
    311                pData->Result.pEnergyDetect = ((uint8*)ZMac_ScanBuf) + MAC_CHAN_11;
   \   000079   90....       MOV     DPTR,#ZMac_ScanBuf
   \   00007C   E0           MOVX    A,@DPTR
   \   00007D   240B         ADD     A,#0xb
   \   00007F   F8           MOV     R0,A
   \   000080   A3           INC     DPTR
   \   000081   E0           MOVX    A,@DPTR
   \   000082   3400         ADDC    A,#0x0
   \   000084   F9           MOV     R1,A
   \   000085   EE           MOV     A,R6
   \   000086   2413         ADD     A,#0x13
   \   000088   F582         MOV     DPL,A
   \   00008A   EF           MOV     A,R7
   \   00008B   12....       LCALL   ??Subroutine4_0
   \                     ??CrossCallReturnLabel_13:
   \   00008E   E8           MOV     A,R0
   \   00008F   F0           MOVX    @DPTR,A
   \   000090   A3           INC     DPTR
   \   000091   E9           MOV     A,R1
   \   000092   F0           MOVX    @DPTR,A
   \   000093   805E         SJMP    ??ZMacScanReq_3
    312              }
    313              else if (pData->MaxResults > 0)
   \                     ??ZMacScanReq_4:
   \   000095   8E82         MOV     DPL,R6
   \   000097   8F83         MOV     DPH,R7
   \   000099   A3           INC     DPTR
   \   00009A   A3           INC     DPTR
   \   00009B   A3           INC     DPTR
   \   00009C   A3           INC     DPTR
   \   00009D   A3           INC     DPTR
   \   00009E   A3           INC     DPTR
   \   00009F   A3           INC     DPTR
   \   0000A0   E0           MOVX    A,@DPTR
   \   0000A1   6050         JZ      ??ZMacScanReq_3
    314              {
    315                if ((ZMac_ScanBuf = pData->Result.pPanDescriptor =
    316                     osal_mem_alloc( sizeof( ZMacPanDesc_t ) * pData->MaxResults )) == NULL)
   \   0000A3   EE           MOV     A,R6
   \   0000A4   2413         ADD     A,#0x13
   \   0000A6   F5..         MOV     ?V0 + 0,A
   \   0000A8   EF           MOV     A,R7
   \   0000A9   3400         ADDC    A,#0x0
   \   0000AB   F5..         MOV     ?V0 + 1,A
   \   0000AD                ; Setup parameters for call to function osal_mem_alloc
   \   0000AD   8E82         MOV     DPL,R6
   \   0000AF   8F83         MOV     DPH,R7
   \   0000B1   A3           INC     DPTR
   \   0000B2   A3           INC     DPTR
   \   0000B3   A3           INC     DPTR
   \   0000B4   A3           INC     DPTR
   \   0000B5   A3           INC     DPTR
   \   0000B6   A3           INC     DPTR
   \   0000B7   A3           INC     DPTR
   \   0000B8   E0           MOVX    A,@DPTR
   \   0000B9   75F021       MOV     B,#0x21
   \   0000BC   A4           MUL     AB
   \   0000BD   FA           MOV     R2,A
   \   0000BE   ABF0         MOV     R3,B
   \   0000C0   90....       MOV     DPTR,#(osal_mem_alloc & 0xffff)
   \   0000C3   74..         MOV     A,#((osal_mem_alloc >> 16) & 0xff)
   \   0000C5   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
   \   0000C8   85..82       MOV     DPL,?V0 + 0
   \   0000CB   85..83       MOV     DPH,?V0 + 1
   \   0000CE   EA           MOV     A,R2
   \   0000CF   F0           MOVX    @DPTR,A
   \   0000D0   A3           INC     DPTR
   \   0000D1   EB           MOV     A,R3
   \   0000D2   F0           MOVX    @DPTR,A
   \   0000D3   85..82       MOV     DPL,?V0 + 0
   \   0000D6   85..83       MOV     DPH,?V0 + 1
   \   0000D9   E0           MOVX    A,@DPTR
   \   0000DA   F8           MOV     R0,A
   \   0000DB   A3           INC     DPTR
   \   0000DC   E0           MOVX    A,@DPTR
   \   0000DD   F9           MOV     R1,A
   \   0000DE   90....       MOV     DPTR,#ZMac_ScanBuf
   \   0000E1   E8           MOV     A,R0
   \   0000E2   F0           MOVX    @DPTR,A
   \   0000E3   A3           INC     DPTR
   \   0000E4   E9           MOV     A,R1
   \   0000E5   F0           MOVX    @DPTR,A
   \   0000E6   90....       MOV     DPTR,#ZMac_ScanBuf
   \   0000E9   E0           MOVX    A,@DPTR
   \   0000EA   7002         JNZ     ??ZMacScanReq_8
   \   0000EC   A3           INC     DPTR
   \   0000ED   E0           MOVX    A,@DPTR
   \                     ??ZMacScanReq_8:
   \   0000EE   7003         JNZ     $+5
   \   0000F0   02....       LJMP    ??ZMacScanReq_7
    317                {
    318                  return MAC_NO_RESOURCES;
    319                }
    320              }
    321            }
    322          
    323            /* Right now, set security to zero */
    324            pData->Sec.SecurityLevel = false;
   \                     ??ZMacScanReq_3:
   \   0000F3   EE           MOV     A,R6
   \   0000F4   2410         ADD     A,#0x10
   \   0000F6   F582         MOV     DPL,A
   \   0000F8   EF           MOV     A,R7
   \   0000F9   12....       LCALL   ??Subroutine2_0
    325          
    326            /* Channel Page */
    327            pData->ChannelPage = 0x00;
   \                     ??CrossCallReturnLabel_7:
   \   0000FC   8E82         MOV     DPL,R6
   \   0000FE   8F83         MOV     DPH,R7
   \   000100   A3           INC     DPTR
   \   000101   A3           INC     DPTR
   \   000102   A3           INC     DPTR
   \   000103   A3           INC     DPTR
   \   000104   A3           INC     DPTR
   \   000105   A3           INC     DPTR
   \   000106   F0           MOVX    @DPTR,A
    328          
    329            MAC_MlmeScanReq ((macMlmeScanReq_t *)pData);
   \   000107                ; Setup parameters for call to function MAC_MlmeScanReq
   \   000107   EE           MOV     A,R6
   \   000108   FA           MOV     R2,A
   \   000109   EF           MOV     A,R7
   \   00010A   FB           MOV     R3,A
   \   00010B   90....       MOV     DPTR,#(MAC_MlmeScanReq & 0xffff)
   \   00010E   74..         MOV     A,#((MAC_MlmeScanReq >> 16) & 0xff)
   \   000110   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
    330          
    331            return ZMacSuccess;
   \   000113   7900         MOV     R1,#0x0
   \                     ??ZMacScanReq_2:
   \   000115                REQUIRE ?Subroutine8
   \   000115                ; // Fall through to label ?Subroutine8
    332          }

   \                                 In segment NEAR_CODE, align 1, keep-with-next
   \                     ?Subroutine8:
   \   000000   7F04         MOV     R7,#0x4
   \   000002   02....       LJMP    ?FUNC_LEAVE_XDATA

   \                                 In segment NEAR_CODE, align 1, keep-with-next
   \                     ?Subroutine4:
   \   000000   F582         MOV     DPL,A
   \   000002   EB           MOV     A,R3
   \                     ??Subroutine4_0:
   \   000003   3400         ADDC    A,#0x0
   \   000005   F583         MOV     DPH,A
   \   000007   22           RET
    333          
    334          
    335          /********************************************************************************************************
    336           * @fn      ZMacStartReq
    337           *
    338           * @brief   This function is called to tell the MAC to transmit beacons
    339           *          and become a coordinator.
    340           *
    341           * @param   structure with info need send it.
    342           *
    343           * @return  status
    344           ********************************************************************************************************/

   \                                 In segment NEAR_CODE, align 1, keep-with-next
    345          ROOT uint8 ZMacStartReq( ZMacStartReq_t *pData )
   \                     ZMacStartReq:
    346          {
   \   000000   74F8         MOV     A,#-0x8
   \   000002   12....       LCALL   ?FUNC_ENTER_XDATA
   \   000005                ; Saved register size: 8
   \   000005                ; Auto size: 1
   \   000005   74FF         MOV     A,#-0x1
   \   000007   12....       LCALL   ?ALLOC_XSTACK8
   \   00000A   EA           MOV     A,R2
   \   00000B   FE           MOV     R6,A
   \   00000C   EB           MOV     A,R3
   \   00000D   FF           MOV     R7,A
    347            uint8 stat;
    348          
    349            // Probably want to keep the receiver on
    350            stat = true;
   \   00000E   7401         MOV     A,#0x1

⌨️ 快捷键说明

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