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

📄 hal_lcd.lst

📁 用IAR开发的ZIGBEE网络路由例子
💻 LST
📖 第 1 页 / 共 4 页
字号:
##############################################################################
#                                                                            #
# IAR 8051 C/C++ Compiler V7.20H/W32                   18/Sep/2008  17:36:49 #
# Copyright 2004-2006 IAR Systems. All rights reserved.                      #
#                                                                            #
#    Core               =  plain                                             #
#    Code model         =  banked                                            #
#    Data model         =  large                                             #
#    Calling convention =  xdata reentrant                                   #
#    Constant location  =  data                                              #
#    Dptr setup         =  1,16                                              #
#    Source file        =  C:\Texas Instruments\ZStack-1.4.2\Components\hal\ #
#                          target\CC2430DB\hal_lcd.c                         #
#    Command line       =  -f "C:\Texas Instruments\ZStack-1.4.2\Projects\zs #
#                          tack\Samples\SampleApp\CC2430DB\..\..\..\Tools\CC #
#                          2430DB\f8wRouter.cfg" (-DCPU32MHZ                 #
#                          -DFORCE_MAC_NEAR -DROOT=__near_func               #
#                          -DMAC_CFG_APP_PENDING_QUEUE=TRUE -DRTR_NWK        #
#                          -DBLINK_LEDS "-DCONST=const __code"               #
#                          -DGENERIC=__generic) -f "C:\Texas                 #
#                          Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
#                          SampleApp\CC2430DB\..\..\..\Tools\CC2430DB\f8wCon #
#                          fig.cfg" (-DSECURE=0 -DDEFAULT_CHANLIST=0x0000080 #
#                          0 -DZDAPP_CONFIG_PAN_ID=0xFFFF                    #
#                          -DNWK_START_DELAY=100 -DEXTENDED_JOINING_RANDOM_M #
#                          ASK=0x007F -DBEACON_REQUEST_DELAY=100             #
#                          -DBEACON_REQ_DELAY_MASK=0x00FF                    #
#                          -DROUTE_EXPIRY_TIME=30 -DAPSC_ACK_WAIT_DURATION_P #
#                          OLLED=3000 -DNWK_INDIRECT_MSG_TIMEOUT=7           #
#                          -DMAX_RREQ_ENTRIES=10 -DAPSC_MAX_FRAME_RETRIES=3  #
#                          -DNWK_MAX_DATA_RETRIES=2                          #
#                          -DMAX_POLL_FAILURE_RETRIES=2 -DMAX_BCAST=9        #
#                          -DAPS_MAX_GROUPS=16 -DMAX_RTG_ENTRIES=20          #
#                          -DNWK_MAX_BINDING_ENTRIES=10                      #
#                          -DMAX_BINDING_CLUSTER_IDS=5                       #
#                          "-DDEFAULT_KEY={0x01, 0x03, 0x05, 0x07, 0x09,     #
#                          0x0B, 0x0D, 0x0F, 0x00, 0x02, 0x04, 0x06, 0x08,   #
#                          0x0A, 0x0C, 0x0D}" -DRFD_RCVC_ALWAYS_ON=FALSE     #
#                          -DPOLL_RATE=1000 -DQUEUED_POLL_RATE=100           #
#                          -DRESPONSE_POLL_RATE=100 -DREJOIN_POLL_RATE=440   #
#                          -DTOP_BOOT_PAGES=0) -I "C:\Program Files\IAR      #
#                          Systems\Embedded Workbench 4.05 Evaluation        #
#                          version\8051\inc\" -I "C:\Program Files\IAR       #
#                          Systems\Embedded Workbench 4.05 Evaluation        #
#                          version\8051\inc\clib\" -I "C:\Texas              #
#                          Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
#                          SampleApp\CC2430DB\" -I "C:\Texas                 #
#                          Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
#                          SampleApp\CC2430DB\..\Source\" -I "C:\Texas       #
#                          Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
#                          SampleApp\CC2430DB\..\..\..\ZMain\TI2430DB\" -I   #
#                          "C:\Texas Instruments\ZStack-1.4.2\Projects\zstac #
#                          k\Samples\SampleApp\CC2430DB\..\..\..\..\..\Compo #
#                          nents\mt\" -I "C:\Texas                           #
#                          Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
#                          SampleApp\CC2430DB\..\..\..\..\..\Components\hal\ #
#                          include\" -I "C:\Texas Instruments\ZStack-1.4.2\P #
#                          rojects\zstack\Samples\SampleApp\CC2430DB\..\..\. #
#                          .\..\..\Components\hal\target\CC2430DB\" -I       #
#                          "C:\Texas Instruments\ZStack-1.4.2\Projects\zstac #
#                          k\Samples\SampleApp\CC2430DB\..\..\..\..\..\Compo #
#                          nents\osal\mcu\ccsoc\" -I "C:\Texas               #
#                          Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
#                          SampleApp\CC2430DB\..\..\..\..\..\Components\osal #
#                          \include\" -I "C:\Texas                           #
#                          Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
#                          SampleApp\CC2430DB\..\..\..\..\..\Components\stac #
#                          k\af\" -I "C:\Texas Instruments\ZStack-1.4.2\Proj #
#                          ects\zstack\Samples\SampleApp\CC2430DB\..\..\..\. #
#                          .\..\Components\stack\nwk\" -I "C:\Texas          #
#                          Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
#                          SampleApp\CC2430DB\..\..\..\..\..\Components\stac #
#                          k\sec\" -I "C:\Texas Instruments\ZStack-1.4.2\Pro #
#                          jects\zstack\Samples\SampleApp\CC2430DB\..\..\..\ #
#                          ..\..\Components\stack\sys\" -I "C:\Texas         #
#                          Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
#                          SampleApp\CC2430DB\..\..\..\..\..\Components\stac #
#                          k\zdo\" -I "C:\Texas Instruments\ZStack-1.4.2\Pro #
#                          jects\zstack\Samples\SampleApp\CC2430DB\..\..\..\ #
#                          ..\..\Components\zmac\f8w\" -I "C:\Texas          #
#                          Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
#                          SampleApp\CC2430DB\..\..\..\..\..\Components\zmac #
#                          \" -I "C:\Texas Instruments\ZStack-1.4.2\Projects #
#                          \zstack\Samples\SampleApp\CC2430DB\..\..\..\..\.. #
#                          \Components\services\saddr\" -I "C:\Texas         #
#                          Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
#                          SampleApp\CC2430DB\..\..\..\..\..\Components\serv #
#                          ices\sdata\" -I "C:\Texas                         #
#                          Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
#                          SampleApp\CC2430DB\..\..\..\..\..\Components\mac\ #
#                          include\" -I "C:\Texas Instruments\ZStack-1.4.2\P #
#                          rojects\zstack\Samples\SampleApp\CC2430DB\..\..\. #
#                          .\..\..\Components\mac\high_level\" -I "C:\Texas  #
#                          Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
#                          SampleApp\CC2430DB\..\..\..\..\..\Components\mac\ #
#                          low_level\srf03\" -I "C:\Texas                    #
#                          Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
#                          SampleApp\CC2430DB\..\..\..\..\..\Components\mac\ #
#                          low_level\srf03\single_chip\" -D CC2430DB -D      #
#                          SOFT_START -D ZAPP_P1 -D HOLD_AUTO_START -lC      #
#                          "C:\Texas Instruments\ZStack-1.4.2\Projects\zstac #
#                          k\Samples\SampleApp\CC2430DB\RouterDB\List\" -lA  #
#                          "C:\Texas Instruments\ZStack-1.4.2\Projects\zstac #
#                          k\Samples\SampleApp\CC2430DB\RouterDB\List\"      #
#                          --diag_suppress Pe001,Pa010 --diag_remark pe550   #
#                          -o "C:\Texas Instruments\ZStack-1.4.2\Projects\zs #
#                          tack\Samples\SampleApp\CC2430DB\RouterDB\Obj\"    #
#                          -e --require_prototypes -z9 --no_code_motion      #
#                          --debug --core=plain --dptr=16,1                  #
#                          --data_model=large --code_model=banked            #
#                          --calling_convention=xdata_reentrant              #
#                          --place_constants=data --nr_virtual_regs 8        #
#                          "C:\Texas Instruments\ZStack-1.4.2\Components\hal #
#                          \target\CC2430DB\hal_lcd.c"                       #
#    List file          =  C:\Texas Instruments\ZStack-1.4.2\Projects\zstack #
#                          \Samples\SampleApp\CC2430DB\RouterDB\List\hal_lcd #
#                          .lst                                              #
#    Object file        =  C:\Texas Instruments\ZStack-1.4.2\Projects\zstack #
#                          \Samples\SampleApp\CC2430DB\RouterDB\Obj\hal_lcd. #
#                          r51                                               #
#                                                                            #
#                                                                            #
##############################################################################

C:\Texas Instruments\ZStack-1.4.2\Components\hal\target\CC2430DB\hal_lcd.c
      1          /**************************************************************************************************
      2            Filename:       hal_lcd.c
      3            Revised:        $Date: 2007-05-29 22:13:37 -0700 (Tue, 29 May 2007) $
      4            Revision:       $Revision: 14456 $
      5          
      6            Description:
      7          
      8            This file contains the interface to the HAL LCD Service. - CC2430
      9          
     10            Notes:
     11          
     12            Copyright (c) 2006 by Texas Instruments, Inc.
     13            All Rights Reserved.  Permission to use, reproduce, copy, prepare
     14            derivative works, modify, distribute, perform, display or sell this
     15            software and/or its documentation for any purpose is prohibited
     16            without the express written consent of Texas Instruments, Inc.
     17          **************************************************************************************************/
     18          
     19          
     20          /**************************************************************************************************
     21           *                                           INCLUDES
     22           **************************************************************************************************/
     23          #include "hal_types.h"
     24          #include "hal_lcd.h"
     25          #include "OSAL.h"
     26          #include "OnBoard.h"
     27          
     28          #ifdef ZTOOL_PORT
     29            #include "DebugTrace.h"
     30          #endif
     31          
     32          /**************************************************************************************************
     33           *                                          CONSTANTS
     34           **************************************************************************************************/
     35          #define LCD_MAX_BUF 25
     36          
     37          // General I/O definitions
     38          #define IO_GIO  0  // General purpose I/O
     39          #define IO_PER  1  // Peripheral function
     40          #define IO_IN   0  // Input pin
     41          #define IO_OUT  1  // Output pin
     42          #define IO_PUD  0  // Pullup/pulldn input
     43          #define IO_TRI  1  // Tri-state input
     44          #define IO_PUP  0  // Pull-up input pin
     45          #define IO_PDN  1  // Pull-down input pin
     46          
     47          // LCD port/bit definitions
     48          #define LCD_CLK_PORT  2
     49          #define LCD_CLK_PIN   0  // P2_0
     50          #define LCD_DATA_PORT 1
     51          #define LCD_DATA_PIN  2  // P1_2
     52          
     53          /* LCD Line Address */
     54          #define LCD_LINE1_ADDR  0x80
     55          #define LCD_LINE2_ADDR  0xC0
     56          
     57          // LCD device definitions
     58          #define LCD_ADDR  0x76  // SM-Bus address of the LCD controller
     59          #define CH1_ADDR  0x08
     60          #define LCD_RS_0  0x00  // RS = 0 => selects instruction register for write/busy flag
     61          #define LCD_RS_1  0x40  // RS = 1 => selects the data register for both read and write
     62          
     63          /**************************************************************************************************
     64           *                                           MACROS
     65           **************************************************************************************************/
     66          
     67          // Removed to allow PNAME macro to expand -
     68          // Problem: in ioCC2430.h, #define P PSW_bit.P
     69          #undef P
     70          
     71            /* I/O PORT CONFIGURATION */
     72          #define CAT1(x,y) x##y  // Concatenates 2 strings
     73          #define CAT2(x,y) CAT1(x,y)  // Forces evaluation of CAT1
     74          
     75          // LCD port I/O defintions
     76          // Builds I/O port name: PNAME(1,INP) ==> P1INP
     77          #define PNAME(y,z) CAT2(P,CAT2(y,z))
     78          // Builds I/O bit name: BNAME(1,2) ==> P1_2
     79          #define BNAME(port,pin) CAT2(CAT2(P,port),CAT2(_,pin))
     80          
     81          #define LCD_SCL BNAME(LCD_CLK_PORT, LCD_CLK_PIN)
     82          #define LCD_SDA BNAME(LCD_DATA_PORT, LCD_DATA_PIN)
     83          
     84          // LCD port I/O defintions
     85          #define LCD_SCL BNAME(LCD_CLK_PORT, LCD_CLK_PIN)
     86          #define LCD_SDA BNAME(LCD_DATA_PORT, LCD_DATA_PIN)
     87          
     88          #define IO_DIR_PORT_PIN(port, pin, dir) \
     89          {\
     90            if ( dir == IO_OUT ) \
     91              PNAME(port,DIR) |= (1<<(pin)); \
     92            else \
     93              PNAME(port,DIR) &= ~(1<<(pin)); \
     94          }
     95          
     96          #define LCD_DATA_HIGH()\
     97          { \
     98            IO_DIR_PORT_PIN(LCD_DATA_PORT, LCD_DATA_PIN, IO_IN); \
     99          }
    100          
    101          #define LCD_DATA_LOW() \
    102          { \
    103            IO_DIR_PORT_PIN(LCD_DATA_PORT, LCD_DATA_PIN, IO_OUT); \
    104            LCD_SDA = 0;\
    105          }
    106          
    107          #define IO_FUNC_PORT_PIN(port, pin, func) \
    108          { \
    109            if( port < 2 ) \
    110            { \
    111              if ( func == IO_PER ) \
    112                PNAME(port,SEL) |= (1<<(pin)); \
    113              else \
    114                PNAME(port,SEL) &= ~(1<<(pin)); \
    115            } \
    116            else \
    117            { \
    118              if ( func == IO_PER ) \
    119                P2SEL |= (1<<(pin>>1)); \
    120              else \
    121                P2SEL &= ~(1<<(pin>>1)); \
    122            } \
    123          }
    124          
    125          #define IO_IMODE_PORT_PIN(port, pin, mode) \
    126          { \
    127            if ( mode == IO_TRI ) \
    128              PNAME(port,INP) |= (1<<(pin)); \
    129            else \
    130              PNAME(port,INP) &= ~(1<<(pin)); \
    131          }
    132          
    133          #define IO_PUD_PORT(port, dir) \
    134          { \
    135            if ( dir == IO_PDN ) \
    136              P2INP |= (1<<(port+5)); \

⌨️ 快捷键说明

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