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

📄 c23-1.lst

📁 51单片机上实现LCD模拟驱动以及汉字显示
💻 LST
字号:
C51 COMPILER V7.06   C23_1                                                                 10/16/2008 08:36:40 PAGE 1   


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

stmt level    source

   1          #include <REG51.H>
   2          #define uchar unsigned char
   3          #define uint unsigned int
   4          #define dataport P0
   5          sbit CS1=P2^4;
   6          sbit CS2=P2^3;
   7          sbit RS=P2^7;
   8          sbit RW=P2^6;
   9          sbit EN=P2^5;
  10          sbit RST=P2^2;
  11          //==============================================================
  12          void delay(unsigned long v);
  13          void busy(void);
  14          void wcode(uchar c,uchar csl,uchar csr);
  15          void wdata(uchar c,uchar csl,uchar csr);
  16          void startline(uchar i);
  17          void dis_on(uchar o);
  18          void reset(void);
  19          void initlcd(void);
  20          void set_xy(uchar x,uchar y);
  21          void lw(uchar x,uchar y,dd);
  22          void dis_hz(uchar x,uchar y,uchar n,uchar fb);
  23          uchar code hz[];
  24          //==============================================================
  25          void main(void)
  26          {
  27   1        uchar loop;
  28   1        initlcd();
  29   1        delay(1000);
  30   1        while(1)
  31   1        {
  32   2          for(loop=0;loop<8;loop++)
  33   2          {
  34   3           dis_hz(loop,0,loop,0);
  35   3           delay(1000);
  36   3          }
  37   2          for(loop=0;loop<8;loop++)
  38   2          {
  39   3           dis_hz(loop,2,loop+8,1);
  40   3           delay(1000);
  41   3          }
  42   2          for(loop=0;loop<8;loop++)
  43   2          {
  44   3           dis_hz(loop,4,loop+16,0);
  45   3           delay(1000);
  46   3          }
  47   2          for(loop=0;loop<8;loop++)
  48   2          {
  49   3           dis_hz(loop,6,loop+24,1);
  50   3           delay(1000);
  51   3          }
  52   2               delay(10000);
  53   2        }
  54   1      }
  55          //===============================================================
C51 COMPILER V7.06   C23_1                                                                 10/16/2008 08:36:40 PAGE 2   

  56          void delay(unsigned long v)
  57          {
  58   1         while(v!=0)v--;
  59   1      }
  60          //===============================================================
  61          void busy(void)
  62          {
  63   1        RS=0;RW=1;dataport=0xff;
  64   1        while(1)
  65   1        {
  66   2           EN=1;
  67   2           if(dataport<0x80) break;
  68   2           EN=0;
  69   2        }
  70   1        EN=0;
  71   1      }
  72          //================================================================
  73          void wcode(uchar c,uchar csl,uchar csr)
  74          {
  75   1        CS1=csl;
  76   1        CS2=csr;
  77   1        busy();
  78   1        RS=0;RW=0;
  79   1        dataport=c;
  80   1        EN=1;
  81   1        EN=0;
  82   1      }
  83          //================================================================
  84          void wdata(uchar c,uchar csl,uchar csr)
  85          {
  86   1        CS1=csl;
  87   1        CS2=csr;
  88   1        busy();
  89   1        RS=1;RW=0;
  90   1        dataport=c;
  91   1        EN=1;
  92   1        EN=0;
  93   1      }
  94          //================================================================
  95          void startline(uchar i)
  96          {
  97   1        i=i+0xc0;
  98   1        wcode(i,1,1);
  99   1      }
 100          //================================================================
 101          void dis_on(uchar o)
 102          {
 103   1        o=o+0x3e;
 104   1        wcode(o,1,1);
 105   1      }
 106          //================================================================
 107          void reset(void)
 108          {
 109   1        RST=0;
 110   1        delay(20);
 111   1        RST=1;
 112   1        delay(20);
 113   1      }
 114          //================================================================
 115          void initlcd(void)
 116          {
 117   1        uchar x,y;  
C51 COMPILER V7.06   C23_1                                                                 10/16/2008 08:36:40 PAGE 3   

 118   1        reset();
 119   1        startline(0);
 120   1        dis_on(0);
 121   1        for(y=0;y<8;y++)
 122   1        {
 123   2           for(x=0;x<128;x++)
 124   2               lw(x,y,0);
 125   2        }
 126   1        dis_on(1);
 127   1      }
 128          //================================================================
 129          void set_xy(uchar x,uchar y)
 130          {
 131   1        x=x+0x40;
 132   1        y=y+0xb8;
 133   1        wcode(x,1,1);
 134   1        wcode(y,1,1);
 135   1      }
 136          //================================================================
 137          void lw(uchar x,uchar y,dd)
 138          {
 139   1        if(x>=64)
 140   1        {
 141   2          set_xy(x-64,y);
 142   2          wdata(dd,0,1);
 143   2        }
 144   1        else
 145   1        {
 146   2           set_xy(x,y);
 147   2           wdata(dd,1,0);
 148   2        }
 149   1      }
 150          //=================================================================
 151          void dis_hz(uchar x,uchar y,uchar n,uchar fb)
 152          {
 153   1        uchar i,dz;
 154   1        for(i=0;i<16;i++)
 155   1        {
 156   2          dz=hz[2*i+n*32];
 157   2          if(fb)dz=255-dz;
 158   2          lw(x*16+i,y,dz);
 159   2          dz=hz[(2*i+1)+n*32];
 160   2          if(fb)dz=255-dz;
 161   2          lw(x*16+i,y+1,dz);
 162   2        }
 163   1      }
 164          //==================================================================
 165          uchar code hz[]=
 166          {0x00,0x20,0x80,0x20,0x84,0x10,0x84,0x10,0x94,0x08,0xA4,0x04,0xC4,0x02,0xFF,0xFF,
 167           0x84,0x01,0xC4,0x02,0xB4,0x04,0x94,0x08,0x84,0x18,0x84,0x30,0x80,0x10,0x00,0x00,/*"来",0*/
 168          
 169           0x00,0x00,0x22,0x42,0x72,0xC2,0x2A,0x42,0x26,0x22,0xE2,0x3F,0x2A,0x22,0x72,0x12,
 170           0x22,0x12,0x00,0x00,0xF8,0x0F,0x00,0x40,0x00,0x80,0xFF,0x7F,0x00,0x00,0x00,0x00,/*"到",1*/
 171          
 172           0x00,0x40,0x00,0x30,0xF8,0x0F,0x48,0x00,0x48,0x08,0x48,0x50,0xC8,0x4F,0x08,0x20,
 173           0xFF,0x10,0x08,0x0B,0x09,0x0C,0x0A,0x12,0xC8,0x21,0x88,0x40,0x08,0xF0,0x00,0x00,/*"成",2*/
 174          
 175           0x20,0x04,0x24,0x02,0x24,0x7F,0xA4,0x25,0x7F,0x25,0x24,0x25,0x34,0x25,0x28,0x7F,
 176           0x24,0x00,0x00,0x00,0xFE,0xFF,0x22,0x08,0x52,0x08,0x8A,0x10,0x06,0x0F,0x00,0x00,/*"都",3*/
 177          
 178           0x00,0x00,0x00,0x00,0xF8,0x0F,0x48,0x04,0x48,0x04,0x48,0x04,0x48,0x04,0xFF,0x3F,
 179           0x48,0x44,0x48,0x44,0x48,0x44,0x48,0x44,0xF8,0x4F,0x00,0x40,0x00,0x70,0x00,0x00,/*"电",4*/
C51 COMPILER V7.06   C23_1                                                                 10/16/2008 08:36:40 PAGE 4   

 180          
 181           0x00,0x60,0xFE,0x1F,0x12,0x21,0x12,0x41,0xFE,0x3F,0x00,0x00,0xC8,0x7F,0x08,0x30,
 182           0x49,0x2C,0x8A,0x23,0x8C,0x23,0x68,0x2C,0x08,0x20,0xC8,0x7F,0x08,0x00,0x00,0x00,/*"脑",5*/
 183          
 184           0x10,0x08,0x10,0x08,0xFF,0x0F,0x10,0x04,0x10,0x0A,0x12,0x04,0x02,0x02,0x02,0x01,
 185           0xC2,0x00,0xF2,0xFF,0x4E,0x00,0x82,0x00,0x02,0x01,0x02,0x06,0x02,0x02,0x00,0x00,/*"坏",6*/
 186          
 187           0x00,0x00,0x00,0x00,0x00,0x58,0x00,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 188           0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*",",7*/
 189          
 190           0x00,0x04,0x00,0x02,0x00,0x01,0xC0,0x00,0x70,0x00,0x20,0x40,0x00,0x80,0xFF,0x7F,
 191           0x00,0x00,0x10,0x00,0x20,0x00,0xC0,0x00,0x80,0x01,0x00,0x07,0x00,0x02,0x00,0x00,/*"小",8*/
 192          
 193           0x02,0x10,0x02,0x10,0x02,0x08,0xFA,0x7C,0xAA,0x23,0xAF,0x32,0xAA,0x2A,0xAA,0x26,
 194           0xAA,0x2A,0xAF,0x32,0xAA,0x22,0xFA,0x42,0x02,0x82,0x02,0x7E,0x02,0x00,0x00,0x00,/*"葛",9*/
 195          
 196           0x00,0x04,0x00,0x02,0x00,0x01,0xC0,0x00,0x70,0x00,0x20,0x40,0x00,0x80,0xFF,0x7F,
 197           0x00,0x00,0x10,0x00,0x20,0x00,0xC0,0x00,0x80,0x01,0x00,0x07,0x00,0x02,0x00,0x00,/*"小",10*/
 198          
 199           0x08,0x40,0x08,0x40,0x08,0x40,0x08,0x20,0x78,0x20,0x88,0x11,0x09,0x0A,0x0E,0x04,
 200           0x08,0x0A,0x88,0x11,0x78,0x10,0x08,0x20,0x08,0x60,0x08,0x20,0x08,0x20,0x00,0x00,/*"文",11*/
 201          
 202           0x00,0x00,0x00,0x01,0x08,0x21,0x08,0x71,0x08,0x29,0x08,0x25,0x08,0x27,0xFF,0x21,
 203           0x08,0x21,0x08,0x21,0x08,0x29,0x08,0x71,0x08,0x21,0x08,0x01,0x00,0x01,0x00,0x00,/*"去",12*/
 204          
 205           0x00,0x00,0x00,0x40,0x02,0x42,0x22,0x22,0xC2,0x22,0x0A,0x12,0x32,0x1A,0x02,0x0E,
 206           0xFA,0x03,0x12,0x06,0x02,0x0A,0x02,0x1A,0x0A,0x32,0x06,0x63,0x02,0x02,0x00,0x00,/*"买",13*/
 207          
 208           0x02,0x00,0x02,0x42,0x32,0x42,0x52,0x22,0x92,0x12,0x1F,0x0A,0x32,0x06,0x52,0xFF,
 209           0x12,0x06,0x1F,0x0A,0x92,0x12,0x52,0x32,0x32,0x62,0x02,0x22,0x02,0x02,0x00,0x00,/*"菜",14*/
 210          
 211           0x00,0x00,0x00,0x18,0x00,0x24,0x00,0x24,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,
 212           0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"。",15*/
 213          
 214           0x20,0x21,0x24,0x11,0x2C,0x4D,0x35,0x81,0xE6,0x7F,0x34,0x05,0x2C,0x59,0x24,0x21,
 215           0x00,0x18,0xFC,0x07,0x24,0x00,0x24,0x00,0xE2,0xFF,0x22,0x00,0x22,0x00,0x00,0x00,/*"新",16*/
 216          
 217           0xF2,0x7F,0x12,0x25,0xFE,0x24,0x12,0x24,0xFE,0x24,0x12,0x25,0xF2,0x7F,0x00,0x00,
 218           0xC2,0x3F,0x42,0x40,0x42,0x40,0x42,0x40,0x42,0x40,0x7E,0x40,0x00,0x78,0x00,0x00,/*"配",17*/
 219          
 220           0x00,0x00,0xFE,0x3F,0x12,0x11,0x12,0x11,0xFE,0x3F,0x00,0x00,0x00,0x00,0xFE,0xFF,
 221           0x92,0x40,0x92,0x23,0x92,0x0C,0x92,0x10,0xFE,0x68,0x00,0xC4,0x00,0x40,0x00,0x00,/*"眼",18*/
 222          
 223           0x40,0x01,0x30,0x01,0xEF,0x7F,0x24,0x21,0x24,0x11,0x04,0x08,0x20,0x40,0xA4,0x2F,
 224           0xAC,0x1A,0xB5,0x0A,0xA6,0x0A,0xB4,0x3A,0xAC,0x4F,0x24,0x40,0x20,0x70,0x00,0x00,/*"镜",19*/
 225          
 226           0x20,0x04,0x20,0x02,0x2A,0x02,0x2A,0x01,0xAA,0xFF,0xEA,0x4A,0xBA,0x4A,0xAE,0x4A,
 227           0xA9,0x4A,0xA9,0x4A,0xA9,0x4A,0xA9,0xFF,0x29,0x00,0x20,0x00,0x20,0x00,0x00,0x00,/*"看",20*/
 228          
 229           0x00,0x80,0x84,0x80,0x84,0x44,0x94,0x44,0x95,0x24,0x96,0x14,0x94,0x0C,0xFC,0x07,
 230           0x94,0x0C,0x96,0x14,0x95,0x24,0x94,0x64,0x94,0xC4,0x84,0x44,0x80,0x00,0x00,0x00,/*"美",21*/
 231          
 232           0x20,0x80,0x20,0x80,0x20,0x40,0x20,0x41,0xE0,0x22,0x38,0x22,0x27,0x14,0x20,0x0C,
 233           0x20,0x0C,0x20,0x0B,0xE0,0x10,0x20,0x30,0x20,0xE0,0x20,0x40,0x20,0x00,0x00,0x00,/*"女",22*/
 234          
 235           0x00,0x00,0x00,0x00,0x00,0x58,0x00,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 236           0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*",",23*/
 237          
 238           0x10,0x42,0x10,0x81,0xFF,0x7F,0x90,0x00,0x40,0x40,0x12,0x50,0xD2,0x57,0x56,0x55,
 239           0x5A,0x55,0xD3,0x7F,0x5A,0x55,0x56,0x55,0xD2,0x57,0x12,0x50,0x10,0x40,0x00,0x00,/*"撞",0*/
 240          
 241           0x00,0x00,0x22,0x42,0x72,0xC2,0x2A,0x42,0x26,0x22,0xE2,0x3F,0x2A,0x22,0x72,0x12,
C51 COMPILER V7.06   C23_1                                                                 10/16/2008 08:36:40 PAGE 5   

 242           0x22,0x12,0x00,0x00,0xF8,0x0F,0x00,0x40,0x00,0x80,0xFF,0x7F,0x00,0x00,0x00,0x00,/*"到",1*/
 243          
 244           0x08,0x02,0x88,0x01,0x68,0x00,0xFF,0xFF,0x28,0x00,0x40,0x40,0x08,0x40,0x08,0x41,
 245           0x09,0x41,0x0A,0x41,0xFC,0x7F,0x08,0x41,0x08,0x41,0x08,0x41,0x08,0x40,0x00,0x00,/*"柱",2*/
 246          
 247           0x00,0x01,0x00,0x01,0x02,0x01,0x02,0x01,0x02,0x01,0x02,0x41,0x02,0x81,0xE2,0x7F,
 248           0x12,0x01,0x0A,0x01,0x06,0x01,0x02,0x01,0x00,0x01,0x80,0x01,0x00,0x01,0x00,0x00,/*"子",3*/
 249          
 250           0x00,0x80,0x00,0x60,0xFE,0x1F,0x12,0x41,0x12,0x81,0xFE,0x7F,0x20,0x42,0x50,0x5C,
 251           0x48,0x41,0x44,0x4E,0x43,0x44,0x44,0x50,0x48,0x4C,0xB0,0x43,0x10,0x41,0x00,0x00,/*"脸",4*/
 252          
 253           0x04,0x02,0xC4,0x01,0xBC,0x7F,0x84,0x20,0x84,0x3F,0x54,0x40,0x90,0x41,0x12,0x40,
 254           0xF4,0x7F,0x10,0x40,0x18,0x40,0xF4,0x7F,0x12,0x42,0x10,0x41,0x90,0x40,0x00,0x00,/*"碰",5*/
 255          
 256           0x10,0x08,0x10,0x08,0xFF,0x0F,0x10,0x04,0x10,0x0A,0x12,0x04,0x02,0x02,0x02,0x01,
 257           0xC2,0x00,0xF2,0xFF,0x4E,0x00,0x82,0x00,0x02,0x01,0x02,0x06,0x02,0x02,0x00,0x00,/*"坏",6*/
 258          
 259           0x00,0x00,0x00,0x18,0x00,0x24,0x00,0x24,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,
 260           0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};/*"。",7*/
 261          
 262              
 263          
 264          
 265          
 266          
 267          
 268            
 269             
 270               
 271            
 272           
 273           
 274          
 275          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    563    ----
   CONSTANT SIZE    =   1024    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----      12
   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 + -