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

📄 lcddriver.lst

📁 i2clCD仿真.rari2clCD仿真 i2clCD仿真 i2clCD仿真
💻 LST
字号:
C51 COMPILER V6.23a  LCDDRIVER                                                             04/13/2006 22:36:01 PAGE 1   


C51 COMPILER V6.23a, COMPILATION OF MODULE LCDDRIVER
OBJECT MODULE PLACED IN LCDDriver.OBJ
COMPILER INVOKED BY: D:\Programe File\Keil\C51\BIN\C51.EXE LCDDriver.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          #include<AT89X52.h>
   2          
   3          #define uchar unsigned char 
   4          
   5          #define DISP_ON 0x3f
   6          #define DISP_OFF 0x3e
   7          #define COL_ADD 0x40
   8          #define PAGE_ADD 0xb8
   9          #define START_LINE 0xc0
  10          #define LCD_BUS P0
  11          
  12          sbit MCS=P2^0;
  13          sbit SCS=P2^1;
  14          sbit DI=P2^2;
  15          sbit RW=P2^3;
  16          sbit ENABLE=P2^4;
  17          sbit LCD_RST=P2^5;
  18          
  19          void Delay(uchar t)
  20          {
  21   1        uchar i,j;
  22   1        for(i=0;i<t;i++)
  23   1        for(j=0;j<10;j++)
  24   1        ;
  25   1      }
  26          
  27          void Write_Command(uchar cmd_code)
  28          {
  29   1        DI=0;
  30   1        RW=0;
  31   1        LCD_BUS=cmd_code;
  32   1        Delay(0);
  33   1        ENABLE=1;
  34   1        Delay(0);
  35   1        ENABLE=0;
  36   1      }
  37          
  38          void Write_Data(uchar Disp_Data)
  39          {
  40   1        DI=1;
  41   1        RW=0;
  42   1        LCD_BUS=Disp_Data;
  43   1        Delay(0);
  44   1        ENABLE=1;
  45   1        Delay(0);
  46   1        ENABLE=0;
  47   1      }
  48          
  49          void Clear_Scran()
  50          {
  51   1        uchar j,k;
  52   1        MCS=1; SCS=1;
  53   1        Write_Command(PAGE_ADD+0);
  54   1        Write_Command(COL_ADD+0);
  55   1        for(k=0;k<8;k++)
C51 COMPILER V6.23a  LCDDRIVER                                                             04/13/2006 22:36:01 PAGE 2   

  56   1        {
  57   2           Write_Command(PAGE_ADD+k);
  58   2           Write_Command(COL_ADD+0);
  59   2           for(j=0;j<64;j++)
  60   2           Write_Data(0x00);
  61   2        }
  62   1      }
  63          
  64          
  65          void Initial_LCD(void)
  66          {
  67   1        LCD_RST=0;
  68   1        Delay(100);
  69   1        LCD_RST=1;
  70   1        Delay(100);
  71   1        MCS=1;
  72   1        SCS=1;
  73   1        Delay(100);
  74   1        Write_Command(DISP_OFF);
  75   1        Write_Command(PAGE_ADD+0);
  76   1        Write_Command(START_LINE+0);
  77   1        Write_Command(COL_ADD+0);
  78   1        Write_Command(DISP_ON);
  79   1      }
  80          
  81          void Disp_Line(uchar page)
  82          {
  83   1        uchar i;
  84   1        MCS=1;
  85   1        SCS=1;
  86   1        Write_Command(DISP_ON);
  87   1        Write_Command(PAGE_ADD);
  88   1        Write_Command(START_LINE);
  89   1        Write_Command(COL_ADD);
  90   1      //  for(j=0;j<8;j++)
  91   1      //  {
  92   1          Write_Command(PAGE_ADD+page);
  93   1          Write_Command(COL_ADD+0);
  94   1          for(i=0;i<64;i++)
  95   1            Write_Data(0x80);
  96   1      //  }
  97   1      }
  98          
  99          void HZK_Disp8(uchar page,uchar col,uchar code *hzk)
 100          {
 101   1        uchar i;
 102   1        Write_Command(PAGE_ADD+page);
 103   1        Write_Command(COL_ADD+col);
 104   1        for(i=0;i<8;i++)
 105   1        {
 106   2          Write_Data(hzk[i]);
 107   2        }
 108   1      }
 109          
 110          void HZK_Disp16(uchar page,uchar col,uchar code *hzk)
 111          {
 112   1        uchar i,j;
 113   1        for(j=0;j<2;j++)
 114   1        {
 115   2          Write_Command(PAGE_ADD+page+j);
 116   2          Write_Command(COL_ADD+col);
 117   2          for(i=0;i<16;i++)
C51 COMPILER V6.23a  LCDDRIVER                                                             04/13/2006 22:36:01 PAGE 3   

 118   2          {
 119   3            Write_Data(hzk[16*j+i]);
 120   3          }
 121   2        }
 122   1      }
 123          
 124          
 125          void LCD_MCS()
 126          {
 127   1        MCS=1;
 128   1        SCS=0;
 129   1      }
 130          
 131          void LCD_SCS()
 132          {
 133   1        MCS=0;
 134   1        SCS=1;
 135   1      }


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