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

📄 lcd.lst

📁 W3100是WIZnet公司专门为以太网互联和嵌入式设备推出的硬件TCP/IP协议栈芯片
💻 LST
字号:
C51 COMPILER V8.02   LCD                                                                   10/17/2006 16:52:41 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE LCD
OBJECT MODULE PLACED IN LCD.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE LCD.C BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /*
   2          ###############################################################################
   3          
   4          File Name : LCD.C
   5          
   6          Version : 1.0
   7          
   8          Programmer(s) : Unknown
   9          
  10          Created : Unknown 
  11          
  12          Description : LCD Basic Function Implement File
  13                            This source file is open, so it's easy to look for through Internet.
  14                     Do not need to controll LCD.
  15            
  16          Modified History
  17          
  18                          Modified : 2002/03/13             
  19                          Description : 
  20          
  21          ###############################################################################
  22          */
  23          
  24          
  25          
  26          /*
  27          ###############################################################################
  28          Include Part
  29          ###############################################################################
  30          */
  31          
  32          #include <lcd.h>
  33          
  34          
  35          
  36          /*
  37          ###############################################################################
  38          Define Part
  39          ###############################################################################
  40          */
  41          
  42          #define BUSY            0x80
  43          
  44          
  45          
  46          /*
  47          ###############################################################################
  48          Grobal Variable Definition Part
  49          ###############################################################################
  50          */
  51          
  52          
  53          
  54          /*
  55          ###############################################################################
C51 COMPILER V8.02   LCD                                                                   10/17/2006 16:52:41 PAGE 2   

  56          Local  Variable Definition Part
  57          ###############################################################################
  58          */
  59          
  60          
  61          
  62          /*
  63          ###############################################################################
  64          Function Implementation Part
  65          ###############################################################################
  66          */
  67          
  68          /*
  69          Description     :  Check to be ready LCD.
  70          Argument       :  
  71          Return Value  :  If it's ready ,then '1',else then '-1'.
  72          Note              :   If LCD Device is not insert actually,then return '-1'.
  73          */
  74          char LcdReady(void)
  75          {
  76   1              unsigned char flag;
  77   1              while( (flag=LcdCommandR) & BUSY)  
  78   1              {
  79   2                      if(flag == 0xFF) return -1;  
  80   2              }
  81   1              return 1;
  82   1      }
  83          
  84          
  85          /*
  86          Description    :  Clear LCD. 
  87          Argument      :   
  88          Return Value :   
  89          Note             : 
  90          */
  91          void ClrScr(void)       
  92          {
  93   1              LcdReady();
  94   1              LcdCommandW = 0x01;
  95   1      }
  96          
  97          
  98          
  99          /*
 100          Description    :   Initialize LCD.
 101          Argument      : 
 102          Return Value :  If initialization is O.K, then return '1', else then return '-1'. 
 103          Note             
 104          */
 105          char InitLcd(void)
 106          {
 107   1              if(-1 ==LcdReady()) return -1;
 108   1              LcdCommandW = 0x38;
 109   1      
 110   1              LcdReady();
 111   1              LcdCommandW = 0x0C;
 112   1      
 113   1              ClrScr();
 114   1              GotoXY(0,0);
 115   1      }
 116          
 117          
C51 COMPILER V8.02   LCD                                                                   10/17/2006 16:52:41 PAGE 3   

 118          /*
 119          Description    :  Move Cursor to X Column, Y Row.
 120          Argument      :  x - Column to move(INPUT), 
 121                                y - Row to move(INPUT), 
 122          Return Value :
 123          Note             :  LCD to be offered by WIZnet is '2*16' Dimension, so Row(Argument y) is not above 1.
 124          */
 125          void GotoXY(unsigned char x, unsigned char y)
 126          {
 127   1          LcdReady();
 128   1          switch(y){
 129   2              case 0 : LcdCommandW = 0x80 + x; break;
 130   2              case 1 : LcdCommandW = 0xC0 + x; break;
 131   2              case 2 : LcdCommandW = 0x94 + x; break;
 132   2              case 3 : LcdCommandW = 0xD4 + x; break;
 133   2          }
 134   1      }
 135          
 136          
 137          /*
 138          Description    :  Output character string in current Cursor.
 139          Argument      :   str - Character to be output in LCD. (INPUT)
 140          Return Value :   Character string's Pointer to be output 
 141          Note :
 142          */
 143          char *Puts(char* str)
 144          {
 145   1              unsigned char i;
 146   1      
 147   1              for (i=0; str[i] != '\0'; i++){
 148   2                      LcdReady();
 149   2                      LcdDataW = str[i];
 150   2              }
 151   1              return str;
 152   1      }
 153          
 154          /*
 155          Description    :   Output 1 character in current Cursor.
 156          Argument      :  str - Character to be output in LCD. (INPUT)
 157          Return Value :   
 158          Note             :
 159          */
 160          void Putch(char ch)
 161          {
 162   1              LcdReady();
 163   1              LcdDataW = ch;
 164   1      }
 165          
 166          /*
 167          ###############################################################################
 168          Unused Function Implementation Part
 169          ###############################################################################
 170          */
 171          
 172          #ifndef __LCD_UNUSED
              
              /*
              Description    :   Decide Cursor type.
              Argument      :   type - Cursor type(INPUT)
              Return Value :   
              Note             :
              */
C51 COMPILER V8.02   LCD                                                                   10/17/2006 16:52:41 PAGE 4   

              void SetCursorType(unsigned char type)  
              {
                      LcdReady();
                      switch(type) 
                      {
                                      //No Cursor 
                              case 0 : LcdCommandW = 0x0C; break;  
                                      // Normal Cursor 
                              case 1 : LcdCommandW = 0x0E; break; 
                              // No Cursor | Blink
                              case 2 : LcdCommandW = 0x0D; break; 
                                      // Normal Cursor | Blink 
                              case 3 : LcdCommandW = 0x0F; break; 
              }
              
              /*
              Description    :  Shift to Left and Right current Cursor.
              Argument      :   dir - Decide direction to be Shift.(INPUT)  dir !=0  -> Right Shift, dir == 0 -> Left Sh
             -ift
              Return Value :   
              Note             :   
              */
              void ShiftCursor(unsigned char dir)     
              {
                      LcdReady();
                      LcdCommandW = (dir ? 0x14: 0x10);
              }
              
              /*
              Description    : Move Cursor first Column.
              Argument      :
              Return Value  :
              Note :
              */
              void HomeCursor(void)       
              {
                      LcdReady();
                      LcdCommandW = 2;
              }
              
              #endif


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    169    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----       3
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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