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

📄 12864.lst

📁 0-30v
💻 LST
字号:
C51 COMPILER V8.08   12864                                                                 10/01/2008 23:53:31 PAGE 1   


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

line level    source

   1          #include"reg52.h"
   2          #include"math.h"
   3          #include"intrins.h"
   4          #include"function.h"
   5          
   6          #define DB P0
   7          
   8          sbit RS = P1^4;
   9          sbit RW = P1^5;
  10          sbit E  = P1^6;
  11          
  12          uchar code logo[] = {
  13          
  14          /*--  调入了一幅图像:I:\液晶屏BMP图\菜单.bmp  --*/
  15          /*--  宽度x高度=128x64  --*/
  16          0x00,0x00,0x00,0x20,0x20,0x08,0x20,0x20,0x00,0x10,0x00,0x00,0x00,0x00,0x00,0x00,
  17          0x00,0x00,0x00,0x20,0x17,0xFC,0x13,0xF0,0x3F,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,
  18          0x00,0x00,0x78,0x20,0x50,0x08,0x12,0x20,0x24,0x90,0x00,0x00,0x00,0x00,0x00,0x00,
  19          0x10,0x00,0x4B,0xFC,0x40,0x08,0x02,0x20,0x3F,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,
  20          0x70,0x00,0x48,0x20,0x47,0xC8,0x02,0x1C,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  21          0x10,0x00,0x48,0x20,0x44,0x48,0xF4,0x00,0x7F,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,
  22          0x10,0x00,0x79,0x20,0x44,0x48,0x1B,0xF0,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  23          0x10,0x00,0x48,0xA0,0x47,0xC8,0x11,0x10,0x1F,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,
  24          0x10,0x00,0x48,0xA0,0x44,0x48,0x11,0x10,0x10,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
  25          0x10,0x00,0x48,0x20,0x44,0x48,0x14,0xA0,0x1F,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,
  26          0x10,0x00,0x78,0x20,0x47,0xC8,0x18,0x40,0x10,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
  27          0x10,0x60,0x48,0x20,0x40,0x08,0x10,0xA0,0x1F,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,
  28          0x7C,0x60,0x40,0xA0,0x40,0x28,0x03,0x1C,0x10,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
  29          0x00,0x00,0x00,0x40,0x40,0x10,0x0C,0x08,0xFF,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,
  30          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  31          0x00,0x00,0x00,0x10,0x00,0x10,0x20,0x20,0x00,0x10,0x00,0x00,0x00,0x00,0x00,0x00,
  32          0x00,0x00,0x1F,0xF8,0x3F,0xF8,0x13,0xF0,0x3F,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,
  33          0x00,0x00,0x10,0x10,0x00,0x00,0x12,0x20,0x24,0x90,0x00,0x00,0x00,0x00,0x00,0x00,
  34          0x3C,0x00,0x1F,0xF0,0x00,0x00,0x02,0x20,0x3F,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,
  35          0x42,0x00,0x10,0x10,0x00,0x08,0x02,0x1C,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  36          0x42,0x00,0x1F,0xF0,0x7F,0xFC,0xF4,0x00,0x7F,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,
  37          0x02,0x00,0x10,0x10,0x01,0x00,0x1B,0xF0,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  38          0x04,0x00,0x04,0x80,0x09,0x40,0x11,0x10,0x1F,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,
  39          0x08,0x00,0x44,0x88,0x09,0x20,0x11,0x10,0x10,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
  40          0x10,0x00,0x24,0x90,0x11,0x10,0x14,0xA0,0x1F,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,
  41          0x20,0x00,0x14,0xA0,0x21,0x08,0x18,0x40,0x10,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
  42          0x42,0x60,0x14,0xC0,0x41,0x08,0x10,0xA0,0x1F,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,
  43          0x7E,0x60,0x04,0x88,0x05,0x00,0x03,0x1C,0x10,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
  44          0x00,0x00,0xFF,0xFC,0x02,0x00,0x0C,0x08,0xFF,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,
  45          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  46          0x00,0x00,0x08,0x40,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  47          0x00,0x00,0x1C,0x40,0x02,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  48          0x00,0x00,0xF0,0x40,0x7F,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  49          0x3C,0x00,0x11,0x50,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  50          0x42,0x00,0xFD,0x48,0x3F,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  51          0x42,0x00,0x11,0x44,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  52          0x04,0x00,0x32,0x44,0xFF,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  53          0x18,0x00,0x3A,0x40,0x05,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  54          0x04,0x00,0x52,0x48,0x09,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  55          0x02,0x00,0x50,0x10,0x18,0xA0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
C51 COMPILER V8.08   12864                                                                 10/01/2008 23:53:31 PAGE 2   

  56          0x42,0x00,0x90,0x20,0x28,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  57          0x42,0x60,0x10,0x40,0xC9,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  58          0x3C,0x60,0x11,0x80,0x0A,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  59          0x00,0x00,0x16,0x00,0x0C,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  60          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  61          0x00,0x00,0x20,0x08,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  62          0x00,0x00,0x17,0xFC,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  63          0x00,0x00,0x48,0x08,0x3C,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  64          0x08,0x00,0x42,0x08,0x41,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  65          0x08,0x00,0x5F,0xE8,0x41,0x24,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  66          0x18,0x00,0x42,0x08,0xF9,0x24,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  67          0x28,0x00,0x4F,0xC8,0xA1,0x24,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  68          0x48,0x00,0x4A,0x48,0x21,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  69          0x48,0x00,0x4A,0x48,0xFD,0x24,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  70          0x7E,0x00,0x4A,0x48,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  71          0x08,0x00,0x4A,0xC8,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  72          0x08,0x60,0x42,0x08,0x28,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  73          0x1E,0x60,0x42,0x28,0x30,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  74          0x00,0x00,0x40,0x10,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  75          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  76          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  77          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  78          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  79          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  80          
  81                               };
  82          
  83          /************************************************************************************
  84                             查忙函数          
  85          ************************************************************************************/
  86          void busy(void)//RS=0;RW=1;wait=0闲;wait!=0忙 
  87          {
  88   1          uchar wait;
  89   1          RS = 0;
  90   1          RW = 1;
  91   1          E = 1;
  92   1          for(;;)
  93   1          {
  94   2              wait = DB;
  95   2              wait &= 0x80;
  96   2              if(wait == 0)break;
  97   2          }
  98   1          E = 0;
  99   1      }
 100          
 101          /************************************************************************************
 102                             写指令函数         
 103          ************************************************************************************/
 104          void w_code(uchar c)//RS=0;RW=0;E下降沿 
 105          {
 106   1          busy();
 107   1          RS = 0;
 108   1          RW = 0;
 109   1          DB = c;
 110   1          E = 1;
 111   1          E = 0;
 112   1          DB = 0xff;
 113   1      }
 114          
 115          /************************************************************************************
 116                             写数据函数        
 117          ************************************************************************************/
C51 COMPILER V8.08   12864                                                                 10/01/2008 23:53:31 PAGE 3   

 118          void w_data(uchar d)//RS=1;RW=0;E下降沿 
 119          {
 120   1          busy();
 121   1          RS = 1;
 122   1          RW = 0;
 123   1          DB = d;
 124   1          E = 1;
 125   1          E = 0;
 126   1          DB = 0xff;
 127   1      }
 128          
 129          /************************************************************************************
 130                                   读数据函数         
 131          ************************************************************************************/
 132          uchar r_data(void)//RS=1;RW=1;E下降沿 
 133          {
 134   1          uchar rd_lcd;
 135   1          busy();
 136   1          RS = 1;
 137   1          RW = 1;
 138   1          E = 1;
 139   1          rd_lcd = DB;
 140   1          E = 0;
 141   1              return rd_lcd;
 142   1      }
 143          
 144          /************************************************************************************
 145                             写DGRAM:x_lcd横坐标,y_lcd纵坐标         
 146          ************************************************************************************/
 147          void address(uchar x_lcd,uchar y_lcd)// 
 148          {
 149   1          w_code(y_lcd);//垂直坐标 
 150   1          w_code(x_lcd);//水平坐标 
 151   1      }
 152          
 153          /************************************************************************************
 154                             初始化液晶屏 
 155                                             0:字库  1:绘图       
 156          ************************************************************************************/
 157          void  lcd_rst(bit a)
 158          {  
 159   1          if(a)
 160   1              {
 161   2              w_code(0x01);//   清屏  
 162   2              w_code(0x32);//   功能设置---8BIT控制界面,绘图显示ON  
 163   2              w_code(0x36);//   功能设置---8BIT控制界面,扩充指令集  
 164   2              }
 165   1              else
 166   1              {
 167   2              w_code(0x30);// 功能设置---8BIT控制界面,基本指令集 
 168   2              w_code(0x0c);//显示打开,光标关,反白显示关 
 169   2              w_code(0x01);// 清除屏幕显示,将DDRAM的地址计数器归零 
 170   2              }
 171   1      }
 172          
 173          /************************************************************************************
 174          ---------------------------写整屏点阵数据 
 175          ---------------------------x :图像数据的起始地址        
 176          ************************************************************************************/
 177          
 178          void  write_lcd_full(uint x )
 179          {
C51 COMPILER V8.08   12864                                                                 10/01/2008 23:53:31 PAGE 4   

 180   1            
 181   1                uchar  i,j,a;
 182   1                j = 0x80; //Y地址寄存器   
 183   1                for(a = 0;a < 32;a++)
 184   1                      {
 185   2                      w_code(j);
 186   2                      j++;
 187   2                      w_code(0x80);//X地址寄存器 
 188   2                      for(i = 0;i < 16;i ++)
 189   2                              {
 190   3                              w_data(logo[x]);
 191   3                              x++;
 192   3                              }
 193   2                      }
 194   1      
 195   1                j = 0x80; //Y地址寄存器  
 196   1                for(a = 0;a < 32;a++)
 197   1                      {
 198   2                      w_code(j);
 199   2                      j++;
 200   2                      w_code(0x88);//X地址寄存器 
 201   2                      for(i = 0;i < 16;i ++)
 202   2                              {
 203   3                              w_data(logo[x]);
 204   3                              x++;
 205   3                              }
 206   2                      }
 207   1      }
 208          
 209          
 210          
 211          
 212          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    208    ----
   CONSTANT SIZE    =   1024    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----       2
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----       1
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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