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

📄 sock-system-lcd.lst

📁 基于单片机的12864lcd显示驱动程序. 更改廷时便可移植到高速mpu上.
💻 LST
字号:
C51 COMPILER V7.50   SOCK_SYSTEM_LCD                                                       09/14/2007 07:59:01 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE SOCK_SYSTEM_LCD
OBJECT MODULE PLACED IN sock-system-lcd.OBJ
COMPILER INVOKED BY: d:\Keeil\C51\BIN\C51.EXE sock-system-lcd.c LARGE ROM(SMALL) BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include <C8051f020.h>         
   2          #define uint  unsigned int  
   3          #define uchar unsigned char
   4          #define PORT P2
   5          #define Left  1
   6          #define Right 2
   7          
   8          code uchar tg[16]={0x00,0xE0,0x10,0x08,0x08,0x48,0x48,0xD0,0x00,0x00,0x01,0x02,0x02,0x02,0x03,0x03}; 
   9          code uchar ts[16]={0x00,0x30,0x48,0x48,0x48,0x48,0x90,0x00,0x00,0x01,0x02,0x02,0x02,0x02,0x01,0x00};
  10          code uchar tm[16]={0x00,0xF8,0x10,0x60,0x80,0x00,0x80,0x60,0x00,0x03,0x00,0x00,0x00,0x01,0x00,0x00}; 
  11          code uchar to[16]={0x00,0xF0,0x18,0x08,0x08,0x08,0x18,0xF0,0x00,0x01,0x03,0x02,0x02,0x02,0x03,0x01}; 
  12          
  13          code uchar tt[16]={0x08,0x08,0x08,0xF8,0x08,0x08,0x08,0x00,0x00,0x00,0x00,0x03,0x00,0x00,0x00,0x00}; 
  14          code uchar tr[16]={0x00,0xF8,0x48,0x48,0x48,0x48,0x48,0xB0,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x03}; 
  15          code uchar  t[16]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}; 
  16          
  17          ///////////////////////
  18          //LCD  PORT DEFINE
  19          sbit  RS=P3^7;//RS=P3^7;
  20          sbit  RW=P3^6;//RW=P3^6;
  21          sbit  EN=P3^5;//EN=P3^5;
  22          
  23          sbit  CS1=P1^7;//CS1=P1^7;
  24          sbit  CS2=P1^6;//CS2=P1^6;
  25          sbit  RST=P1^5;//REST=P1^5;
  26          
  27          ////////////////////////////////////////////////////
  28          main()
  29          {
  30   1      for(;;)
  31   1       {
  32   2       uchar i,d,page,y;
  33   2       XBR2=0x40;
  34   2       for(i=0;i<200;i++);RS=0;RW=0;CS1=0;CS2=1;P2=0xc0;EN=1;EN=0;   RW=1;//first address
  35   2      
  36   2       for(i=0;i<200;i++);RS=0;RW=0;CS1=0;CS2=1;P2=0x3f;EN=1;EN=0;   RW=1;
  37   2      
  38   2       for(i=0;i<200;i++);RS=0;RW=0;CS1=0;CS2=1;P2=0xb8;EN=1;EN=0;   RW=1;//page//b8
  39   2       for(i=0;i<200;i++);
  40   2      
  41   2       for(i=0;i<200;i++);RS=0;RW=0;CS1=0;CS2=1;P2=0x40;EN=1;EN=0;   RW=1;//y//40
  42   2       for(i=0;i<200;i++);RS=1;RW=0;CS1=0;CS2=1;P2=0x01;EN=1;EN=0;   RW=1;
  43   2       for(i=0;i<200;i++);RS=1;RW=0;CS1=0;CS2=1;P2=0x02;EN=1;EN=0;   RW=1;
  44   2       for(i=0;i<200;i++);RS=0;RW=0;CS1=0;CS2=1;P2=0x42;EN=1;EN=0;   RW=1;
  45   2       for(i=0;i<200;i++);RS=1;RW=0;CS1=0;CS2=1;P2=0x04;EN=1;EN=0;   RW=1;
  46   2      //////////////////////////////////////////////////////////////
  47   2       for(i=0;i<200;i++);RS=0;RW=0;CS1=0;CS2=1;P2=0xc0;EN=1;EN=0;    RW=1;//first address
  48   2      Initial();
*** WARNING C206 IN LINE 48 OF SOCK-SYSTEM-LCD.C: 'Initial': missing function-prototype
  49   2      
  50   2       WriteData(0x3F,Left);
*** WARNING C206 IN LINE 50 OF SOCK-SYSTEM-LCD.C: 'WriteData': missing function-prototype
*** ERROR C267 IN LINE 50 OF SOCK-SYSTEM-LCD.C: 'WriteData': requires ANSI-style prototype
  51   2       }
  52   1      } 
C51 COMPILER V7.50   SOCK_SYSTEM_LCD                                                       09/14/2007 07:59:01 PAGE 2   

  53          ////////////////////////////////////////////////////////////////////
  54          
  55          void Delay_us(unsigned int DelayTime)
  56           {
  57   1         while(DelayTime) DelayTime--;
  58   1        }
  59          //////////////////////////////////////////////////////////////////////////////////////
  60          void Delay_x10ms(unsigned char DelayTime)   //***************10ms延时**********//
  61             {
  62   1             unsigned char i,j,k;
  63   1             for(i=0;i<DelayTime;i++)
  64   1                for(j=0;j<50;j++)
  65   1                   for(k=0;k<120;k++) {;}
  66   1          }
  67          
  68          ////////////////////////////////////////////////////////////////////
  69           Initial(void) 
  70          {   
  71   1        RST=0;
  72   1        Delay_us(2);  
  73   1        RST = 1;
  74   1       
  75   1      } 
  76          //////////////////////////////////////////////////////////////
  77          void WriteCommand(uchar Command, uchar CS_Num) 
  78          { 
  79   1        Delay_x10ms(1);
  80   1        if(CS_Num==1)                 /*选择左半屏*/
  81   1         {
  82   2           CS1 = 0;
  83   2               CS2 = 1;
  84   2              }
  85   1        else if(CS_Num==2)    /*选择右半屏*/
  86   1         {
  87   2           CS1 = 1;
  88   2               CS2 = 0;
  89   2              }
  90   1        EN = 0;           /* 使能信号为L */ 
  91   1        RS = 0;           /* 置寄存器选择为L */ 
  92   1        RW = 0;           /* 置读/写选择为L */ 
  93   1        PORT = Command;   /* 将控制指令代码输出到的数据端口 */ 
  94   1        EN = 1;           /* 使能信号为H */ 
  95   1        Delay_us(5);          /* 延时2us */ 
  96   1        EN = 0;           /* 使能信号为L */ 
  97   1        CS1 = 1;          /* 置片选1为L */ 
  98   1        CS2 = 1;          /* 置片选2为L */ 
  99   1      } ///////////////////////////////////////////////////////////////
 100          WriteData(uchar Data,uchar CS_Num) 
 101          { 
 102   1        Delay_x10ms(1);
 103   1        if(CS_Num==1)          /*选择左半屏*/
 104   1         {
 105   2           CS1 = 0;
 106   2               CS2 = 1;
 107   2              }
 108   1        else if(CS_Num==2)  /*选择右半屏*/
 109   1         {
 110   2           CS1 = 1;
 111   2               CS2 = 0;
 112   2              }
 113   1        EN = 0;
 114   1        RS = 1;       /* 置寄存器选择为H */ 
C51 COMPILER V7.50   SOCK_SYSTEM_LCD                                                       09/14/2007 07:59:01 PAGE 3   

 115   1        RW = 0;       /* 置读/写选择为L */  
 116   1        PORT = Data;  /* 将显示数据输出到的数据端口 */ 
 117   1        EN = 1;       /* 使能信号为H */ 
 118   1        Delay_us(5);      /* 延时2us */ 
 119   1        EN = 0;       /* 使能信号为L */ 
 120   1        CS1= 1;       /* 置片选1为L */ 
 121   1        CS2= 1;       /* 置片选2为L */ 
 122   1      } 
 123          ////////////////////////////////////////////////////////

C51 COMPILATION COMPLETE.  2 WARNING(S),  1 ERROR(S)

⌨️ 快捷键说明

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