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

📄 lcm.lst

📁 基于51单片机实现UART通信 SPI通信 和IIC通信
💻 LST
字号:
C51 COMPILER V7.50   LCM                                                                   05/31/2008 19:14:39 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE LCM
OBJECT MODULE PLACED IN LCM.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE C_H\LCM.c BROWSE DEBUG OBJECTEXTEND PRINT(.\LCM.lst) OBJECT(LCM.obj)

line level    source

   1          #include "Includes.h"
   2                  
   3          /**************函数声明***********************/
   4          static void ReadStatusLCM(void);  
   5          static void Delay5Ms(void);
   6          
   7          /*****************写数据***********************/ 
   8          extern void WriteDataLCM(unsigned char date)      
   9          {
  10   1       ReadStatusLCM();  //检测忙
  11   1       LCM_Data = date;
  12   1       Delay_Xms(5);
  13   1       LCM_RS = 1;
  14   1       LCM_RW = 0;
  15   1       LCM_E = 0;   //小的延时
  16   1       LCM_E = 1;
  17   1       
  18   1      }
  19          
  20          /*********写指令BuysC为0时忽略忙检测**************/
  21          extern void WriteCommandLCM(unsigned char address,BuysC)     
  22          {
  23   1       //if (BuysC)
  24   1        ReadStatusLCM(); //根据需要检测忙
  25   1       LCM_Data = address;
  26   1       Delay_Xms(5);
  27   1       LCM_RS = 0;
  28   1       LCM_RW = 0;
  29   1       LCM_E = 0;
  30   1       LCM_E = 1;
  31   1       
  32   1      }
  33          
  34          /******************读忙状态(1忙,0不忙)*************/
  35            void  ReadStatusLCM(void)                                             
  36          {
  37   1       LCM_Data = 0x00;
  38   1       Delay_Xms(5);
  39   1       LCM_RS = 0;
  40   1       LCM_RW = 1;
  41   1       LCM_E = 0;
  42   1       LCM_E = 1; 
  43   1       while(Busy); //检测忙信号,忙则延时
  44   1      }
  45          
  46          
  47          
  48          /*********************LCM初始化**************************/
  49          extern void LCMInit(void)        
  50          {
  51   1       WriteCommandLCM(0x01,0); //清除屏幕
  52   1       WriteCommandLCM(0x38,0); //两次功能设置8位 单行 5*7不检测忙信号
  53   1       Delay_Xms(5);
  54   1       WriteCommandLCM(0x38,0);
  55   1       Delay_Xms(5);
C51 COMPILER V7.50   LCM                                                                   05/31/2008 19:14:39 PAGE 2   

  56   1       WriteCommandLCM(0x01,1); //显示清屏
  57   1       WriteCommandLCM(0x0C,1); // 控制光标,显示 开,闪烁
  58   1       WriteCommandLCM(0x06,1); // 控制光标和文字的移动
  59   1       }
  60          
  61          /********************显示程序(对应地址写入数据)********/
  62          extern void display_lcm(unsigned char date,unsigned char address)                            
  63          {
  64   1       WriteCommandLCM(address,1);
  65   1       WriteDataLCM(date);                 
  66   1      }
  67          /****************显示字符串******************************/
  68          extern void  diaplay_string( unsigned char *adr,unsigned char N)
  69           {
  70   1         unsigned char i,a=0x80;
  71   1         for(i=0;i<N;i++)
  72   1              {
  73   2                        WriteCommandLCM(a,1);
  74   2                WriteDataLCM(adr[i]);
  75   2                        a++;
  76   2                  }
  77   1       }
  78          /***********************END*******************************/


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