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

📄 zmain.lst

📁 cc2430应用实例
💻 LST
📖 第 1 页 / 共 4 页
字号:
   \   0000B5   74..         MOV     A,#((Onboard_wait >> 16) & 0xff)
   \   0000B7   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
    265            }
   \                     ??zmain_ext_addr_4:
   \   0000BA                ; Setup parameters for call to function HalKeyRead
   \   0000BA   90....       MOV     DPTR,#(HalKeyRead & 0xffff)
   \   0000BD   74..         MOV     A,#((HalKeyRead >> 16) & 0xff)
   \   0000BF   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
   \   0000C2   E9           MOV     A,R1
   \   0000C3   6404         XRL     A,#0x4
   \   0000C5   70CC         JNZ     ??zmain_ext_addr_5
    266            HalLedSet( HAL_LED_1, HAL_LED_MODE_OFF );
   \   0000C7                ; Setup parameters for call to function HalLedSet
   \   0000C7   7A00         MOV     R2,#0x0
   \   0000C9   7901         MOV     R1,#0x1
   \   0000CB   90....       MOV     DPTR,#(HalLedSet & 0xffff)
   \   0000CE   74..         MOV     A,#((HalLedSet >> 16) & 0xff)
   \   0000D0   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
    267          
    268            // Plug AtoD data into lower bytes
    269            AtoD = HalAdcRead (HAL_ADC_CHANNEL_7, HAL_ADC_RESOLUTION_10);
   \   0000D3                ; Setup parameters for call to function HalAdcRead
   \   0000D3   7A02         MOV     R2,#0x2
   \   0000D5   7907         MOV     R1,#0x7
   \   0000D7   90....       MOV     DPTR,#(HalAdcRead & 0xffff)
   \   0000DA   74..         MOV     A,#((HalAdcRead >> 16) & 0xff)
   \   0000DC   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
    270            xad = (uint8*)&aExtendedAddress;
    271            *xad++ = LO_UINT16( AtoD );
   \   0000DF   EA           MOV     A,R2
   \   0000E0   90....       MOV     DPTR,#aExtendedAddress
   \   0000E3   F0           MOVX    @DPTR,A
    272            *xad = HI_UINT16( AtoD );
   \   0000E4   EB           MOV     A,R3
   \   0000E5   90....       MOV     DPTR,#(aExtendedAddress + 1)
   \   0000E8   F0           MOVX    @DPTR,A
    273          
    274          #if !defined( ZTOOL_PORT ) || defined( ZPORT ) || defined( NV_RESTORE )
    275            // If no support for Z-Tool serial I/O,
    276            // Write temporary 64-bit address to NV
    277            osal_nv_write( ZCD_NV_EXTADDR, 0, Z_EXTADDR_LEN, &aExtendedAddress );
   \   0000E9                ; Setup parameters for call to function osal_nv_write
   \   0000E9   75....       MOV     ?V0 + 0,#(aExtendedAddress & 0xff)
   \   0000EC   75....       MOV     ?V0 + 1,#((aExtendedAddress >> 8) & 0xff)
   \   0000EF   78..         MOV     R0,#?V0 + 0
   \   0000F1   12....       LCALL   ?PUSH_XSTACK_I_TWO
   \   0000F4   75..08       MOV     ?V0 + 0,#0x8
   \   0000F7   75..00       MOV     ?V0 + 1,#0x0
   \   0000FA   78..         MOV     R0,#?V0 + 0
   \   0000FC   12....       LCALL   ?PUSH_XSTACK_I_TWO
   \   0000FF   7C00         MOV     R4,#0x0
   \   000101   7D00         MOV     R5,#0x0
   \   000103   7A01         MOV     R2,#0x1
   \   000105   7B00         MOV     R3,#0x0
   \   000107   90....       MOV     DPTR,#(osal_nv_write & 0xffff)
   \   00010A   74..         MOV     A,#((osal_nv_write >> 16) & 0xff)
   \   00010C   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
   \   00010F   7404         MOV     A,#0x4
   \   000111   12....       LCALL   ?DEALLOC_XSTACK8
    278          #endif
    279          }
   \                     ??zmain_ext_addr_2:
   \   000114   7F02         MOV     R7,#0x2
   \   000116   02....       LJMP    ?FUNC_LEAVE_XDATA

   \                                 In segment NEAR_CODE, align 1, keep-with-next
   \                     ?Subroutine0:
   \   000000   E582         MOV     A,DPL
   \   000002   24FF         ADD     A,#-0x1
   \   000004   F582         MOV     DPL,A
   \   000006   E583         MOV     A,DPH
   \   000008   34FF         ADDC    A,#-0x1
   \   00000A   F583         MOV     DPH,A
   \   00000C   22           RET

   \                                 In segment XSP, align 1

   \                                 In segment SFR_AN, at 0x90
   \   union <unnamed> volatile __sfr _A_P1
   \                     _A_P1:
   \   000000                DS 1
    280          
    281          /*********************************************************************
    282           * @fn      zmain_dev_info
    283           * @brief   Gets or makes extended address.
    284           * @return  none
    285           *********************************************************************/
    286          static ZSEG void zmain_dev_info ( void )
    287          {
    288          #ifdef LCD_SUPPORTED
    289            uint8 i;
    290            uint8 ch;
    291            uint8 *xad;
    292            unsigned char lcd_buf[18];
    293          
    294            // Display the extended address
    295            xad = (uint8*)&aExtendedAddress + Z_EXTADDR_LEN - 1;
    296            for ( i = 0; i < Z_EXTADDR_LEN*2; xad-- ) {
    297              ch = (*xad >> 4) & 0x0F;
    298              lcd_buf[i++] = ch + (( ch < 10 ) ? '0' : '7');
    299              ch = *xad & 0x0F;
    300              lcd_buf[i++] = ch + (( ch < 10 ) ? '0' : '7');
    301            }
    302            lcd_buf[Z_EXTADDR_LEN*2] = '\0';
    303            HalLcdWriteString( "IEEE Address:", HAL_LCD_LINE_1 );
    304            HalLcdWriteString( (char*)lcd_buf, HAL_LCD_LINE_2 );
    305          #endif // LCD
    306          }
    307          
    308          /*********************************************************************
    309           * @fn      zmain_ram_init
    310           * @brief   Initialize ram for stack "high-water-mark" observations.
    311           * @return  none
    312           *********************************************************************/
    313          static ZSEG void zmain_ram_init( void )
    314          {
    315            uint8 *end;
    316            uint8 *ptr;
    317          
    318            // Initialize the call (parameter) stack
    319            end = (uint8*)CSTK_BEG;  // Lower end
    320            ptr = (uint8*)(*( __idata uint16*)(CSTK_PTR));  // Upper end
    321            while ( --ptr > end )
    322              *ptr = STACK_INIT_VALUE;
    323          
    324            // Initialize the return (address) stack
    325            ptr = (uint8*)RSTK_END - 1;  // Upper end
    326            while ( --ptr > (uint8*)SP )
    327              *(__idata uint8*)ptr = STACK_INIT_VALUE;
    328          }
    329          
    330          #ifdef LCD_SUPPORTED
    331          /*********************************************************************
    332           * @fn      zmain_lcd_init
    333           * @brief   Initialize LCD at start up.
    334           * @return  none
    335           *********************************************************************/
    336          static ZSEG void zmain_lcd_init ( void )
    337          {
    338          #ifdef LCD_SD
    339           // if ( LcdLine1 == NULL )
    340            {
    341              HalLcdWriteString( "Figure8 Wireless", HAL_LCD_LINE_1 );
    342          
    343          #if defined( MT_MAC_FUNC )
    344          #if defined( ZDO_COORDINATOR )
    345                HalLcdWriteString( "MAC-MT Coord", HAL_LCD_LINE_2 );
    346          #else
    347                HalLcdWriteString( "MAC-MT Device", HAL_LCD_LINE_2 );
    348          #endif // ZDO
    349          #elif defined( MT_NWK_FUNC )
    350          #if defined( ZDO_COORDINATOR )
    351                HalLcdWriteString( "NWK Coordinator", HAL_LCD_LINE_2 );
    352          #else
    353                HalLcdWriteString( "NWK Device", HAL_LCD_LINE_2 );
    354          #endif // ZDO
    355          #endif // MT_FUNC
    356            }
    357          #endif // LCD_SD
    358          }
    359          #endif
    360          
    361          /*********************************************************************
    362          *********************************************************************/

   Maximum stack usage in bytes:

     Function               ISTACK PSTACK XSTACK
     --------               ------ ------ ------
     main                       1      0      0
       -> osal_int_disable      0      0      0
       -> zmain_vdd_check       0      0      0
       -> InitBoard             0      0      0
       -> HalDriverInit         0      0      0
       -> osal_nv_init          0      0      0
       -> zmain_ext_addr        0      0      0
       -> zgInit                0      0      0
       -> ZMacInit              0      0      0
       -> afInit                0      0      0
       -> osal_init_system      0      0      0
       -> osal_int_enable       0      0      0
       -> InitBoard             0      0      0
       -> osal_start_system     0      0      0
     zmain_ext_addr             1      0     13
       -> osal_nv_item_init     0      0     22
       -> osal_nv_read          0      0     26
       -> Onboard_wait          0      0     18
       -> HalLedSet             0      0     18
       -> Onboard_wait          0      0     18
       -> HalKeyRead            0      0     18
       -> HalLedSet             0      0     18
       -> HalAdcRead            0      0     18
       -> osal_nv_write         0      0     26
     zmain_vdd_check            0      0      8
       -> Onboard_wait          0      0     16
       -> HalAdcCheckVdd        0      0     16
       -> Onboard_wait          0      0     16
       -> Onboard_wait          0      0     16


   Segment part sizes:

     Function/Label  Bytes
     --------------  -----
     SP                 1
     P2INP              1
     P1DIR              1
     main             164
     zmain_vdd_check  122
     zmain_ext_addr   281
     ?Subroutine0      13
     _A_P1              1

 
 580 bytes in segment NEAR_CODE
   4 bytes in segment SFR_AN
 
 580 bytes of CODE memory
   0 bytes of DATA memory (+ 4 bytes shared)

Errors: none
Warnings: none

⌨️ 快捷键说明

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