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

📄 driver.lst

📁 波形液晶显示! 波形液晶显示! 波形液晶显示! 波形液晶显示!
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V6.23a  DRIVER                                                                04/07/2007 15:44:02 PAGE 1   


C51 COMPILER V6.23a, COMPILATION OF MODULE DRIVER
OBJECT MODULE PLACED IN driver.OBJ
COMPILER INVOKED BY: e:\mcs51\Keil\C51\BIN\C51.EXE driver.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1                  #include<MABIAO.h>
   2                  #include<reg52.h>
   3                  #include<absacc.h>
   4          
   5                  #define disp_on 0x3f
   6                  #define disp_off 0x3e
   7                  #define page_0 0xb8
   8                  #define col_0 0x40
   9                  #define line_0 0xc0
  10          
  11                  #define cs XBYTE[0X8000]
  12                  #define wc XBYTE[0XA000]
  13                  #define wd XBYTE[0XA001]
  14                  #define bs XBYTE[0XA002]
  15                  #define uchar unsigned char     
  16                  #define uint unsigned int
  17          
  18                  extern uchar flag1,zhi;
  19                  extern bit flag2;
  20                  bit flag3,flag4;
  21                  uchar wjs1,wjs2,le,p,js=1;
  22                  uchar a[3],b[3];
  23                  uint BAUD=9600;
  24          
  25                  void delay(uint j)
  26                  {
  27   1                      uint i;
  28   1                      for(i=0;i<j;i++);
  29   1              }
  30          
  31                  void lcdbusy()
  32                  {
  33   1                      while((bs&0x80)!=0);
  34   1              }
  35          
  36                  void write_command(uchar cmd)
  37                  {
  38   1                      lcdbusy();
  39   1                      wc=cmd;
  40   1              }
  41          
  42                  void write_data(uchar dat)
  43                  {
  44   1                      lcdbusy();
  45   1                      wd=dat;
  46   1              }
  47          
  48                  void lcd_init()
  49                  {
  50   1                      write_command(disp_off);
  51   1                      cs=0x30;
  52   1                      write_command(line_0);
  53   1                      write_command(page_0);
  54   1                      write_command(col_0);
  55   1                      write_command(disp_on);
C51 COMPILER V6.23a  DRIVER                                                                04/07/2007 15:44:02 PAGE 2   

  56   1                      delay(20);
  57   1              }
  58          
  59                  void clr_scr()
  60                  {
  61   1                      uchar i,j;
  62   1                      cs=0x10;
  63   1                      for(i=0;i<8;i++)
  64   1                      {
  65   2                              write_command(page_0+i);
  66   2                              write_command(col_0);
  67   2                              for(j=0;j<64;j++)
  68   2                                      write_data(0x00);
  69   2                      }
  70   1                      cs=0x20;
  71   1                      for(i=0;i<8;i++)
  72   1                      {
  73   2                              write_command(page_0+i);
  74   2                              write_command(col_0);
  75   2                              for(j=0;j<64;j++)
  76   2                                      write_data(0x00);
  77   2                      }
  78   1              }
  79          
  80                  void sz_disp(uchar page,uchar col,uchar *p)
  81                  {
  82   1                      uchar i,j;
  83   1                      for(i=0;i<2;i++)
  84   1                      {
  85   2                              write_command(page_0+page+i);
  86   2                              write_command(col_0+col);
  87   2                              for(j=0;j<8;j++)
  88   2                                      write_data(*p++);
  89   2                      }
  90   1              }
  91          
  92                  void hz_disp(uchar page,uchar col,uchar *p)
  93                  {
  94   1                      uchar i,j;
  95   1                      for(i=0;i<2;i++)
  96   1                      {
  97   2                              write_command(page_0+page+i);
  98   2                              write_command(col_0+col);
  99   2                              for(j=0;j<16;j++)
 100   2                                      write_data(*p++);
 101   2                      }
 102   1              }
 103          
 104                  void start_msg()
 105                  {
 106   1                      clr_scr();
 107   1                      delay(100);
 108   1                      cs=0x10;
 109   1                      hz_disp(0,0,jiantou);
 110   1                      sz_disp(0,16,&shuzi[16]);
 111   1                      hz_disp(0,32,hz);
 112   1                      hz_disp(0,48,&hz[32]);
 113   1                      sz_disp(2,16,&shuzi[32]);
 114   1                      hz_disp(2,32,&hz[32*4]);
 115   1                      hz_disp(2,48,&hz[32*5]);
 116   1                      sz_disp(4,16,&shuzi[48]);
 117   1                      hz_disp(4,32,&hz[32*9]);
C51 COMPILER V6.23a  DRIVER                                                                04/07/2007 15:44:02 PAGE 3   

 118   1                      hz_disp(4,48,&hz[32*10]);
 119   1                      cs=0x20;
 120   1                      hz_disp(0,0,&hz[32*2]);
 121   1                      hz_disp(0,16,&hz[32*3]);
 122   1                      hz_disp(2,0,&hz[32*6]);
 123   1                      hz_disp(2,16,&hz[32*7]);
 124   1                      hz_disp(2,32,&hz[32*8]);
 125   1                      hz_disp(4,0,&hz[32*11]);
 126   1                      hz_disp(4,16,&hz[32*12]);
 127   1              }
 128          
 129                  void bxcsh()
 130                  {
 131   1                      unsigned i,j;
 132   1                      clr_scr();
 133   1                      cs=0x10;
 134   1                      for(i=0;i<8;i++)
 135   1                      {
 136   2                              write_command(page_0+i);
 137   2                              write_command(col_0);
 138   2                              for(j=0;j<64;j++)
 139   2                                      write_data(boxin_img[i*128+j]);
 140   2                      }
 141   1                      cs=0x20;
 142   1                      for(i=0;i<8;i++)
 143   1                      {
 144   2                              write_command(page_0+i);
 145   2                              write_command(col_0);
 146   2                              for(j=64;j<128;j++)
 147   2                                      write_data(boxin_img[i*128+j]);
 148   2                      }
 149   1              }
 150          
 151                  void xuanze()
 152                  {
 153   1                      clr_scr();
 154   1                      cs=0x10;
 155   1                      hz_disp(0,0,jiantou);
 156   1                      sz_disp(0,16,&shuzi[16]);
 157   1                      sz_disp(0,32,&shuzi[16*9]);
 158   1                      sz_disp(0,40,&shuzi[16*6]);
 159   1                      sz_disp(0,48,shuzi);
 160   1                      sz_disp(0,56,shuzi);
 161   1                      sz_disp(2,16,&shuzi[16*2]);
 162   1                      sz_disp(2,32,&shuzi[16*4]);
 163   1                      sz_disp(2,40,&shuzi[16*8]);
 164   1                      sz_disp(2,48,shuzi);
 165   1                      sz_disp(2,56,shuzi);
 166   1                      sz_disp(4,16,&shuzi[16*3]);
 167   1                      sz_disp(4,32,&shuzi[16*2]);
 168   1                      sz_disp(4,40,&shuzi[16*4]);
 169   1                      sz_disp(4,48,shuzi);
 170   1                      sz_disp(4,56,shuzi);
 171   1              }
 172          
 173                  void fuzhi()
 174                  {
 175   1                      clr_scr();
 176   1                      cs=0x10;
 177   1                      hz_disp(2,0,&hz[32*13]);
 178   1                      hz_disp(2,16,&hz[32*14]);
 179   1                      hz_disp(2,32,&hz[32*15]);
C51 COMPILER V6.23a  DRIVER                                                                04/07/2007 15:44:02 PAGE 4   

 180   1                      hz_disp(2,48,&hz[32*16]);
 181   1              }
 182          
 183                  void zhixs()
 184                  {
 185   1                      uint i;

⌨️ 快捷键说明

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