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

📄 initlcd.lst

📁 Keil C51完整的128X64LCD显示的电子打铃仪代码,内含DS1302X5045等操作代码
💻 LST
字号:
C51 COMPILER V7.50   INITLCD                                                               06/10/2006 08:26:03 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE INITLCD
OBJECT MODULE PLACED IN InitLCD.OBJ
COMPILER INVOKED BY: D:\ExpertTools\Keil\C51\BIN\C51.EXE InitLCD.C OPTIMIZE(5,SPEED) BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /*********************************************************************
   2           *Description:                 SW680GAM Machine LCD INITIAL Drive Program 
   3           *File Name:                    LCD.C
   4           *Use Compile Lanague:  KEIL C51
   5           *Version :                     V1.0
   6           *Code Author:                 zhouhuanxi
   7           *Date:                                 2005-01-14
   8           CopyRight(C)                   2005 --  SHENZHEN XINSANWEI Machine&Electronics CO.,LTD.
   9          *********************************************************************/
  10          //==== FILE Include And Macro Declare Segment====
  11          
  12          #include        "Config.H"
  13          
  14          //-----------------------------------------------
  15          
  16          //LCD Working Status Check MARCO(Busy or Ready)
  17          #define         LcdWaitBusy()                                                   \
  18                                                                                  LCD_DATA=0xFF;          \
  19                                                                          LCD_DI = 0;                     \
  20                                                                          LCD_RW = 1;                     \
  21                                                                          LCD_E  = 1;             \
  22                                                                          _NOP_();                                \
  23                                                                          LCD_E  = 0;                             \
  24                                                                                  while (LCD_DATA &0x7F ==0x80);
  25          
  26          //*************************************************
  27          //============ FUNCTION CODE SEGMENT =============
  28          //*************************************************
  29          
  30          //=================================================
  31          //Function:     InitLcd 
  32          //Description:  Init LCD
  33          //Parameters:   NO.
  34          //Call:                 SingleCmd()
  35          //Returns:              NO.
  36          //Side Effects: NO.
  37          //=================================================
  38          void InitLcd(void)      
  39          {
  40   1                      LCD_DATA        =       0x00;
  41   1                      LCD_DI          =       0;
  42   1              LCD_RW          =       0;
  43   1              LCD_E           =       0;
  44   1              LCD_CS1         =       0;
  45   1              LCD_CS2         =       0;
  46   1      
  47   1              SingleCmd(DISPLAY_OFF); //Display OFF
  48   1              SingleCmd(START_LINE);
  49   1              SingleCmd(X_ADRESS);
  50   1              SingleCmd(Y_ADRESS);
  51   1              SingleCmd(DISPLAY_ON); // Display ON
  52   1      }       
  53          
  54          //=================================================
  55          //Function:     SingleData      
C51 COMPILER V7.50   INITLCD                                                               06/10/2006 08:26:03 PAGE 2   

  56          //Description:  Only Send a Byte of Data to LCD
  57          //Parameters:   col,c   
  58                                          //col ----      Display col Address
  59                                          //c     ----    Diaplay Content
  60          //Call:                 _NOP_()
  61          //Returns:              NO.
  62          //Side Effects: NO.
  63          //=================================================
  64          void SingleData(uint8 col,uint8 c)
  65          {
  66   1              LCD_E=0;
  67   1              LCD_DI=0;
  68   1              LCD_RW=1;
  69   1              
  70   1              if(col<64)
  71   1              {
  72   2              LCD_CS1=1; 
  73   2              }
  74   1              else
  75   1              {
  76   2              LCD_CS2=1;
  77   2              }
  78   1              
  79   1              LcdWaitBusy();
  80   1              
  81   1              LCD_DI = 1;             // Data mode 
  82   1              LCD_RW = 0;             // write mode 
  83   1              LCD_DATA = c;           // outbyte 
  84   1              _NOP_();
  85   1              LCD_E = 1;                      // Strobe 
  86   1              _NOP_();
  87   1              LCD_E = 0;
  88   1              _NOP_();
  89   1              _NOP_();
  90   1              LCD_CS1=0;      
  91   1              LCD_CS2=0;
  92   1      }
  93          
  94          //=================================================
  95          //Function:     SingleCmd       
  96          //Description:  Only Send a Byte of Command Data to LCD,Set LCD's Status
  97          //Parameters:   c       
  98                                          //c     ----    LCD Control Command (uint8)
  99          //Call:                 _NOP_(),LcdWaitBusy()
 100          //Returns:              NO.
 101          //Side Effects: NO.
 102          //=================================================
 103          void SingleCmd(uint8 c)
 104          {
 105   1              LCD_E=0;
 106   1              LCD_DI=0;
 107   1              LCD_RW=1;
 108   1              LCD_CS1=1;      
 109   1              LCD_CS2=1;
 110   1              
 111   1              LcdWaitBusy();
 112   1              
 113   1              LCD_DI = 0;             // Instruction mode 
 114   1              LCD_RW = 0;             // Write mode 
 115   1              //LCD_E = 1;                    // Strobe 
 116   1              
 117   1              //_NOP_(); 
C51 COMPILER V7.50   INITLCD                                                               06/10/2006 08:26:03 PAGE 3   

 118   1              //LCD_E = 0;
 119   1              //_NOP_();
 120   1              LCD_DATA = c;           // outbyte 
 121   1              
 122   1              _NOP_();
 123   1              _NOP_();
 124   1              
 125   1              LCD_E = 1;
 126   1              _NOP_();
 127   1              _NOP_();
 128   1              LCD_E = 0;
 129   1              
 130   1              _NOP_();
 131   1              _NOP_();
 132   1              
 133   1              LCD_CS1=0;      
 134   1              LCD_CS2=0;
 135   1      }
 136          
 137          /*********************************************************************************************************
             -***
 138          ***************************************** END OF FILE ****************************************************
             -***
 139          **********************************************************************************************************
             -**/
 140          


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