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

📄 lcd.lst

📁 12232的液晶显示程序,是胖胖工作室写的一个范例.我就是用这个程序了解LCD的编程了.相当不错.替胖胖工作室贡献给大家了.
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V7.06   LCD                                                                   03/13/2005 21:02:58 PAGE 1   


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

stmt level    source

   1          /***************************************************************
   2          功能:实现液晶显示LCD 122*32点阵驱动器为0713
   3          作者:SG
   4          时间:2004-03-15
   5          版本:V1.0
   6          ***************************************************************/
   7          /*
   8          #define SOFT_RESET              0xE2
   9          #define DISP_OFF                0xAE
  10          #define START_LINE              0xC0
  11          #define FIRST_PAGE              0xE2
  12          #define START_COL               0x00
  13          #define RIGHT_ADC               0xA0
  14          #define NORMAL_DRV              0xA4
  15          #define DUTY_32_1               0xA9
  16          #define RCW_OFF                 0xEE
  17          #define DISP_ON                 0xAF
  18          */
  19          
  20          /*---------------------------------------------------------------------------------
  21          CPU 端口定义
  22          ---------------------------------------------------------------------------------*/
  23          sfr  LCD_PORT   = 0x80;
  24          sbit LCD_DI     = 0xb3;
  25          sbit LCD_ENA2   = 0xb4;
  26          sbit LCD_ENA1   = 0xb5;
  27          
  28          /*---------------------------------------------------------------------------------
  29          西文字库点阵
  30          ---------------------------------------------------------------------------------*/
  31          unsigned char code Large_DianZen[]={
  32          0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ,           //null
  33          0,0,0,0,0,0,0xF8,0x33,0,0x30,0,0,0,0,0,0,   //!
  34          /*0x00,0x00,0x80,0x00,0x80,0x00,0xE0,0x1F,0x80,0x20,0x80,0x20,0x00,0x00,0x00,0x00, //t
  35          0x00,0x00,0x00,0x1F,0x80,0x22,0x80,0x22,0x80,0x22,0x80,0x22,0x00,0x13,0x00,0x00, //e
  36          0x00,0x00,0x08,0x20,0x08,0x20,0xF8,0x3F,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x00, //l
  37          0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x30,0xC0,0x30,0x00,0x00,0x00,0x00,0x00,0x00, //:
  38          0x00,0x00,0x70,0x1C,0x88,0x22,0x08,0x21,0x08,0x21,0x88,0x22,0x70,0x1C,0x00,0x00, //8
  39          0x00,0x00,0xF8,0x19,0x08,0x21,0x88,0x20,0x88,0x20,0x08,0x11,0x08,0x0E,0x00,0x00, //5
  40          0x00,0x00,0xF8,0x19,0x08,0x21,0x88,0x20,0x88,0x20,0x08,0x11,0x08,0x0E,0x00,0x00, //5
  41          0x00,0x00,0x70,0x30,0x08,0x28,0x08,0x24,0x08,0x22,0x88,0x21,0x70,0x30,0x00,0x00, //2
  42          0x00,0x00,0x70,0x1C,0x88,0x22,0x08,0x21,0x08,0x21,0x88,0x22,0x70,0x1C,0x00,0x00, //8
  43          0x00,0x00,0xE0,0x0F,0x10,0x11,0x88,0x20,0x88,0x20,0x18,0x11,0x00,0x0E,0x00,0x00, //6
  44          0x00,0x00,0x70,0x30,0x08,0x28,0x08,0x24,0x08,0x22,0x88,0x21,0x70,0x30,0x00,0x00, //2
  45          0x00,0x00,0x00,0x07,0xC0,0x04,0x20,0x24,0x10,0x24,0xF8,0x3F,0x00,0x24,0x00,0x00, //4
  46          *///;--  Tel:13588316485  --  **  宋体, 12  **
  47          //;--  Tel:13588316485  --  **  宋体, 12  **                                       
  48          //; 当前所选字体下一个汉字对应的点阵为:  宽度x高度=120x16,  调整后为: 120x16       
  49          0x18,0x00,0x08,0x00,0x08,0x20,0xF8,0x3F,0x08,0x20,0x08,0x00,0x18,0x00,0x00,0x00,
  50          0x00,0x00,0x00,0x1F,0x80,0x22,0x80,0x22,0x80,0x22,0x80,0x22,0x00,0x13,0x00,0x00,
  51          0x00,0x00,0x08,0x20,0x08,0x20,0xF8,0x3F,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x00,
  52          0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x30,0xC0,0x30,0x00,0x00,0x00,0x00,0x00,0x00,
  53          0x00,0x00,0x10,0x20,0x10,0x20,0xF8,0x3F,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x00,
  54          0x00,0x00,0x30,0x18,0x08,0x20,0x88,0x20,0x88,0x20,0x48,0x11,0x30,0x0E,0x00,0x00,
  55          0x00,0x00,0xF8,0x19,0x08,0x21,0x88,0x20,0x88,0x20,0x08,0x11,0x08,0x0E,0x00,0x00,
C51 COMPILER V7.06   LCD                                                                   03/13/2005 21:02:58 PAGE 2   

  56          0x00,0x00,0x70,0x1C,0x88,0x22,0x08,0x21,0x08,0x21,0x88,0x22,0x70,0x1C,0x00,0x00,
  57          0x00,0x00,0x70,0x1C,0x88,0x22,0x08,0x21,0x08,0x21,0x88,0x22,0x70,0x1C,0x00,0x00,
  58          0x00,0x00,0x30,0x18,0x08,0x20,0x88,0x20,0x88,0x20,0x48,0x11,0x30,0x0E,0x00,0x00,
  59          0x00,0x00,0x10,0x20,0x10,0x20,0xF8,0x3F,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x00,
  60          0x00,0x00,0xE0,0x0F,0x10,0x11,0x88,0x20,0x88,0x20,0x18,0x11,0x00,0x0E,0x00,0x00,
  61          0x00,0x00,0x00,0x07,0xC0,0x04,0x20,0x24,0x10,0x24,0xF8,0x3F,0x00,0x24,0x00,0x00,
  62          0x00,0x00,0x70,0x1C,0x88,0x22,0x08,0x21,0x08,0x21,0x88,0x22,0x70,0x1C,0x00,0x00,
  63          0x00,0x00,0xF8,0x19,0x08,0x21,0x88,0x20,0x88,0x20,0x08,0x11,0x08,0x0E,0x00,0x00,
  64          
  65                                                                                         
  66          };                                                                             
  67                                                                                         
  68          /*---------------------------------------------------------------------------------
  69          汉字字库点阵                                                                   
  70          ---------------------------------------------------------------------------------*/
  71          unsigned char code HanZi[]={
  72          //;--  欢迎使用单片机开发板祝你早日成为单片机高手胖胖工作室贺  --  **  宋体, 12  **
  73          //; 当前所选字体下一个汉字对应的点阵为:  宽度x高度=432x16,  调整后为: 432x16
  74          0x14,0x20,0x24,0x10,0x44,0x4C,0x84,0x43,0x64,0x43,0x1C,0x2C,0x20,0x20,0x18,0x10,
  75          0x0F,0x0C,0xE8,0x03,0x08,0x06,0x08,0x18,0x28,0x30,0x18,0x60,0x08,0x20,0x00,0x00,
  76          0x40,0x40,0x41,0x20,0xCE,0x1F,0x04,0x20,0x00,0x40,0xFC,0x47,0x04,0x42,0x02,0x41,
  77          0x02,0x40,0xFC,0x5F,0x04,0x40,0x04,0x42,0x04,0x44,0xFC,0x43,0x00,0x40,0x00,0x00,
  78          0x40,0x00,0x20,0x00,0xF0,0x7F,0x1C,0x00,0x07,0x40,0xF2,0x41,0x94,0x22,0x94,0x14,
  79          0x94,0x0C,0xFF,0x13,0x94,0x10,0x94,0x30,0x94,0x20,0xF4,0x61,0x04,0x20,0x00,0x00,
  80          0x00,0x80,0x00,0x40,0x00,0x30,0xFE,0x0F,0x22,0x02,0x22,0x02,0x22,0x02,0x22,0x02,
  81          0xFE,0xFF,0x22,0x02,0x22,0x02,0x22,0x42,0x22,0x82,0xFE,0x7F,0x00,0x00,0x00,0x00,
  82          0x00,0x08,0x00,0x08,0xF8,0x0B,0x28,0x09,0x29,0x09,0x2E,0x09,0x2A,0x09,0xF8,0xFF,
  83          0x28,0x09,0x2C,0x09,0x2B,0x09,0x2A,0x09,0xF8,0x0B,0x00,0x08,0x00,0x08,0x00,0x00,
  84          0x00,0x80,0x00,0x40,0x00,0x30,0xFE,0x0F,0x10,0x01,0x10,0x01,0x10,0x01,0x10,0x01,
  85          0x10,0x01,0x1F,0x01,0x10,0x01,0x10,0xFF,0x10,0x00,0x18,0x00,0x10,0x00,0x00,0x00,
  86          0x08,0x04,0x08,0x03,0xC8,0x00,0xFF,0xFF,0x48,0x00,0x88,0x41,0x08,0x30,0x00,0x0C,
  87          0xFE,0x03,0x02,0x00,0x02,0x00,0x02,0x00,0xFE,0x3F,0x00,0x40,0x00,0x78,0x00,0x00,
  88          0x40,0x00,0x42,0x40,0x42,0x20,0x42,0x10,0x42,0x0C,0xFE,0x03,0x42,0x00,0x42,0x00,
  89          0x42,0x00,0x42,0x00,0xFE,0x7F,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x00,0x00,
  90          0x00,0x40,0x10,0x20,0x3E,0x10,0x10,0x88,0x10,0x87,0xF0,0x41,0x9F,0x46,0x90,0x28,
  91          0x90,0x10,0x92,0x28,0x94,0x27,0x1C,0x40,0x10,0xC0,0x10,0x40,0x10,0x00,0x00,0x00,
  92          0x10,0x04,0x10,0x03,0xD0,0x00,0xFF,0x7F,0x50,0x00,0x90,0x11,0x00,0x0E,0xFE,0x41,
  93          0x62,0x20,0xA2,0x11,0x22,0x0A,0x21,0x0E,0xA1,0x31,0x61,0x60,0x00,0x20,0x00,0x00,
  94          0x08,0x02,0x08,0x01,0x89,0x00,0xCE,0xFF,0xA8,0x00,0x18,0x83,0x00,0x40,0xFE,0x30,
  95          0x82,0x0F,0x82,0x00,0x82,0x00,0x82,0x7F,0xFE,0x80,0x00,0x80,0x00,0xF0,0x00,0x00,
  96          0x80,0x00,0x40,0x00,0xF0,0x7F,0x2C,0x00,0x43,0x10,0x20,0x0C,0x98,0x03,0x0F,0x21,
  97          0x0A,0x40,0xE8,0x3F,0x08,0x00,0x88,0x00,0x28,0x03,0x1C,0x1C,0x08,0x08,0x00,0x00,
  98          0x00,0x04,0x00,0x04,0x00,0x04,0xFE,0x04,0x92,0x04,0x92,0x04,0x92,0x04,0x92,0xFF,
  99          0x92,0x04,0x92,0x04,0x92,0x04,0x92,0x04,0xFE,0x04,0x00,0x04,0x00,0x04,0x00,0x00,
 100          0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x3F,0x42,0x10,0x42,0x10,0x42,0x10,0x42,0x10,
 101          0x42,0x10,0x42,0x10,0x42,0x10,0xFE,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 102          0x00,0x40,0x00,0x30,0xF8,0x0F,0x48,0x00,0x48,0x08,0x48,0x50,0xC8,0x4F,0x08,0x20,
 103          0xFF,0x10,0x08,0x0B,0x09,0x0C,0x0A,0x12,0xC8,0x21,0x88,0x40,0x08,0xF0,0x00,0x00,
 104          0x00,0x00,0x10,0x00,0x10,0x40,0x12,0x20,0x14,0x10,0x1C,0x08,0x10,0x06,0xF0,0x01,
 105          0x9F,0x00,0x10,0x11,0x10,0x26,0x10,0x40,0x10,0x20,0xF8,0x1F,0x10,0x00,0x00,0x00,
 106          0x00,0x08,0x00,0x08,0xF8,0x0B,0x28,0x09,0x29,0x09,0x2E,0x09,0x2A,0x09,0xF8,0xFF,
 107          0x28,0x09,0x2C,0x09,0x2B,0x09,0x2A,0x09,0xF8,0x0B,0x00,0x08,0x00,0x08,0x00,0x00,
 108          0x00,0x80,0x00,0x40,0x00,0x30,0xFE,0x0F,0x10,0x01,0x10,0x01,0x10,0x01,0x10,0x01,
 109          0x10,0x01,0x1F,0x01,0x10,0x01,0x10,0xFF,0x10,0x00,0x18,0x00,0x10,0x00,0x00,0x00,
 110          0x08,0x04,0x08,0x03,0xC8,0x00,0xFF,0xFF,0x48,0x00,0x88,0x41,0x08,0x30,0x00,0x0C,
 111          0xFE,0x03,0x02,0x00,0x02,0x00,0x02,0x00,0xFE,0x3F,0x00,0x40,0x00,0x78,0x00,0x00,
 112          0x04,0x00,0x04,0xFF,0x04,0x01,0x04,0x01,0x74,0x3D,0x54,0x25,0x55,0x25,0x56,0x25,
 113          0x54,0x25,0x54,0x25,0x74,0x3D,0x04,0x41,0x04,0x81,0x04,0x7F,0x04,0x00,0x00,0x00,
 114          0x00,0x02,0x24,0x02,0x24,0x02,0x24,0x02,0x24,0x02,0x24,0x42,0x24,0x82,0xFE,0x7F,
 115          0x22,0x02,0x22,0x02,0x22,0x02,0x22,0x02,0x22,0x02,0x20,0x02,0x00,0x02,0x00,0x00,
 116          0x00,0x80,0x00,0x70,0xFE,0x0F,0x22,0x41,0x22,0x81,0xFE,0x7F,0x44,0x04,0x58,0x04,
 117          0x40,0x04,0xFF,0xFF,0x40,0x04,0x50,0x04,0x4C,0x04,0x48,0x04,0x00,0x04,0x00,0x00,
C51 COMPILER V7.06   LCD                                                                   03/13/2005 21:02:58 PAGE 3   

 118          0x00,0x80,0x00,0x70,0xFE,0x0F,0x22,0x41,0x22,0x81,0xFE,0x7F,0x44,0x04,0x58,0x04,
 119          0x40,0x04,0xFF,0xFF,0x40,0x04,0x50,0x04,0x4C,0x04,0x48,0x04,0x00,0x04,0x00,0x00,
 120          0x00,0x20,0x00,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0xFE,0x3F,
 121          0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x00,0x20,0x00,0x00,
 122          0x80,0x00,0x40,0x00,0x20,0x00,0xF8,0xFF,0x07,0x00,0x22,0x00,0x18,0x00,0x0C,0x00,
 123          0xFB,0xFF,0x48,0x04,0x48,0x04,0x48,0x04,0x68,0x04,0x48,0x06,0x08,0x04,0x00,0x00,
 124          0x00,0x40,0x10,0x40,0x2C,0x48,0x24,0x49,0xA4,0x49,0x64,0x49,0x25,0x49,0x26,0x7F,
 125          0x24,0x49,0x24,0x49,0xA4,0x49,0x24,0x4B,0x34,0x48,0x2C,0x40,0x04,0x40,0x00,0x00,
 126          0x00,0x00,0x42,0x00,0x22,0x80,0x12,0x80,0x8F,0x5F,0xA2,0x40,0xC2,0x20,0xBE,0x10,
 127          0x80,0x0E,0xBE,0x10,0x92,0x20,0x92,0x6F,0x12,0xC0,0x3E,0x40,0x00,0x00,0x00,0x00,
 128          };
 129          
 130          
 131          unsigned char code LCD_Show_Tab[]={
 132          0x00,0x00,0x00,0x00,0x90,0x00,0x90,0x01,0x90,0x02,0x90,0x03,0x00,0x00,0x00,0x00,  //欢迎使用
 133          0x00,0x90,0x04,0x90,0x05,0x90,0x06,0x90,0x07,0x90,0x08,0x90,0x09,0x01,0x00,0x00,//单片机开发板
 134          0x00,0x00,0x00,0x00,0x90,0x0a,0x90,0x0b,0x90,0x0c,0x90,0x0d,0x00,0x00,0x00,0x00,//祝你早日
 135          0x90,0x0e,0x90,0x0f,0x90,0x10,0x90,0x11,0x90,0x12,0x90,0x13,0x90,0x14,0x01,0x00,//成为单片机高手
 136          0x00,0x90,0x15,0x90,0x16,0x90,0x17,0x90,0x18,0x90,0x19,0x90,0x1a,0x01,0x00,0x00,//沈氏工作室贺!
 137          0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f,0x10,0x00,//tel:85528624
 138          };
 139          
 140          
 141          /*-----------------------------------------------
 142          LCD接收命令子程序:F为主/从选择0主模块被选中
 143          ------------------------------------------------*/
 144          
 145          void LCD_Write_Set( unsigned char Com,bit F )
 146          {
 147   1              
 148   1              LCD_PORT = Com;
 149   1              LCD_DI = 0;
 150   1          if ( F )
 151   1          {
 152   2              LCD_ENA2 = 1;
 153   2              LCD_ENA2 = 0;
 154   2           }
 155   1           else
 156   1           {
 157   2              LCD_ENA1 = 1;
 158   2              LCD_ENA1 = 0;
 159   2           }
 160   1      }
 161          
 162          /*-----------------------------------------------
 163          LCD接收数据子程序:F为主/从选择0主模块被选中
 164          ------------------------------------------------*/
 165          void LCD_Write_Data( unsigned char Com,bit F )
 166          {
 167   1              LCD_PORT = Com;
 168   1              LCD_DI = 1;
 169   1          if ( F )
 170   1          {
 171   2              LCD_ENA2 = 1;
 172   2              LCD_ENA2 = 0;
 173   2           }
 174   1           else
 175   1           {
 176   2              LCD_ENA1 = 1;
 177   2              LCD_ENA1 = 0;
 178   2           }
 179   1      }
C51 COMPILER V7.06   LCD                                                                   03/13/2005 21:02:58 PAGE 4   

 180          
 181          
 182          /*--------------------------------------------------------------
 183          //设置xPos,yPos(x,y行列坐标)
 184          ------------------------------------------------------------*/
 185          void Set_xyPos_LCD(unsigned char xPos,unsigned char yPos)       //112*32 0713 xPos(0---112)  yPos(0---3)
 186          {
 187   1              unsigned char i;
 188   1              if ( yPos < 2 )
 189   1                      i = 0xBA;
 190   1              else
 191   1                      i = 0xB6;
 192   1              if ( xPos > 60 )
 193   1              {
 194   2      
 195   2                      LCD_Write_Set(yPos + i,1);              //Page_LCD[i] i=0 first page i=7 seventh page
 196   2              //      LCD_Write_Set(((xPos - 57)>>4)&0x0F|0x10,1);    //set col address msb
 197   2                      LCD_Write_Set(xPos - 61,1);                             //set col address lsb
 198   2              }
 199   1              else
 200   1              {

⌨️ 快捷键说明

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