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

📄 display.lst

📁 单片机通过I2C总线控制24c02 其中包括 24C02初始化 24C02读写等 STC单片机初始化 读写等
💻 LST
字号:
C51 COMPILER V8.02   DISPLAY                                                               12/29/2007 12:48:34 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE DISPLAY
OBJECT MODULE PLACED IN display.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE display.c COMPACT BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include <reg52.h>
   2          #define LCD_Data P0             //LCD数据与控制线
   3          
   4          sbit LCD_RS=P2^2;               //液晶控制  
   5          sbit LCD_RW=P2^1;               //液晶写入
   6          sbit LCD_E=P2^0;                //液晶使能
   7          
   8          extern void Delay(long int time);
   9          void WriteCommandLCD(unsigned char WCLCD);
  10          void WriteDataLCD(unsigned char WDLCD);
  11          
  12          /*******************************以下是显示驱动******************************/
  13          
  14          void LCDInit(void) //LCM初始化                   
  15          {
  16   1              LCD_Data = 0x00;
  17   1              WriteCommandLCD(0x38);  
  18   1              Delay(50);                                                                                                                 
  19   1              WriteCommandLCD(0x38); //显示模式设置,开始要求每次检测忙信号               
  20   1              WriteCommandLCD(0x08); //关闭显示                                        
  21   1              WriteCommandLCD(0x06); // 显示光标移动设置                               
  22   1              WriteCommandLCD(0x01); //显示清屏        
  23   1              WriteCommandLCD(0x0f); // 显示开及光标设置                 
  24   1      }
  25          
  26          void WriteCommandLCD(unsigned char WCLCD)                 
  27          {
  28   1              Delay(50);
  29   1              LCD_Data = WCLCD;
  30   1              LCD_RS = 0;
  31   1              LCD_RW = 0; 
  32   1              LCD_E = 1; 
  33   1              Delay(50);   
  34   1              LCD_E = 0; 
  35   1      }
  36          
  37          //读状态         
  38          
  39          void WriteDataLCD(unsigned char WDLCD)
  40          {
  41   1              Delay(50);
  42   1              LCD_Data = WDLCD;
  43   1              LCD_RS = 1;
  44   1              LCD_RW = 0;
  45   1              
  46   1              LCD_E = 1; //-----!!!问题一直出在这里!!!             
  47   1              Delay(50);
  48   1              LCD_E = 0; 
  49   1      }
  50          
  51          void charadds(unsigned long a) 
  52          {
  53   1         unsigned long c,p=0;
  54   1         c=a/1000000000;
  55   1         if(c!=0)
C51 COMPILER V8.02   DISPLAY                                                               12/29/2007 12:48:34 PAGE 2   

  56   1         {
  57   2                      WriteDataLCD(c+0x30);
  58   2              p=1;
  59   2          }
  60   1          c=(a%1000000000)/100000000;
  61   1          if(c!=0 || p==1)
  62   1          {
  63   2                      WriteDataLCD(c+0x30);
  64   2                  p=1;
  65   2          }
  66   1          c=(a%100000000)/10000000;
  67   1          if(c!=0 || p==1)
  68   1          {
  69   2                      WriteDataLCD(c+0x30);
  70   2                  p=1;
  71   2          }
  72   1          c=(a%10000000)/1000000;
  73   1          if(c!=0 || p==1)
  74   1          {
  75   2                      WriteDataLCD(c+0x30);
  76   2                  p=1;
  77   2          }
  78   1          c=(a%1000000)/100000;
  79   1          if(c!=0 || p==1)
  80   1          {
  81   2                      WriteDataLCD(c+0x30);
  82   2                  p=1;
  83   2          }
  84   1          c=(a%100000)/10000;
  85   1          if(c!=0 || p==1)
  86   1          {
  87   2                      WriteDataLCD(c+0x30);
  88   2                  p=1;
  89   2          }               
  90   1          c=(a%10000)/1000;
  91   1          if(c!=0 || p==1)
  92   1          {
  93   2                      WriteDataLCD(c+0x30);
  94   2                  p=1;
  95   2          }                
  96   1          c=(a%1000)/100;
  97   1          if(c!=0 || p==1)
  98   1          {
  99   2                      WriteDataLCD(c+0x30);
 100   2                  p=1;
 101   2          }
 102   1          c=(a%100)/10;
 103   1          if(c!=0 || p==1)
 104   1          {
 105   2                      WriteDataLCD(c+0x30);
 106   2          }            
 107   1          c=a%10+0x30;
 108   1          WriteDataLCD(c);    
 109   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   1164    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----      14
   DATA SIZE        =   ----    ----
C51 COMPILER V8.02   DISPLAY                                                               12/29/2007 12:48:34 PAGE 3   

   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 + -