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

📄 lcdtest.lst

📁 这个是LCD1602的测试程序
💻 LST
字号:
C51 COMPILER V7.05   LCDTEST                                                               04/19/2009 11:32:49 PAGE 1   


C51 COMPILER V7.05, COMPILATION OF MODULE LCDTEST
OBJECT MODULE PLACED IN lcdtest.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE lcdtest.c OPTIMIZE(2,SPEED) BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          #include<reg51.h>
   2          #include "intrins.h"
   3          #define uchar unsigned char
   4          #define uint unsigned int
   5          #define nop _nop_()
   6          void CheckLcdBusy();
   7          uchar code table[]="I LOVE MCU!";
   8          uchar code table1[]="WWW.TXMCU.COM";
   9          sbit lcden=P2^7;        //液晶使能端
  10          sbit lcdrw=P2^6;
  11          sbit lcdrs=P2^5;        //液晶数据命令选择端
  12          uchar num;
  13          void delay(uint z)
  14          {
  15   1              uint x,y;
  16   1              for(x=z;x>0;x--)
  17   1                      for(y=110;y>0;y--);
  18   1      }
  19          void write_com(uchar com)
  20          {
  21   1          CheckLcdBusy();
  22   1              lcdrw=0;
  23   1              lcdrs=0;
  24   1          lcden=1;
  25   1              P0=com;
  26   1          delay(1);
  27   1          lcden=0;
  28   1          delay(1);
  29   1         lcden=1;
  30   1          P0=(com<<4);
  31   1              delay(5);
  32   1              lcden=0;
  33   1      }
  34          void write_data(uchar date)
  35          {
  36   1          CheckLcdBusy();
  37   1          lcdrw=0;
  38   1              lcdrs=1;
  39   1          lcden=1;
  40   1              P0=date;
  41   1          delay(1);
  42   1          lcden=0;
  43   1          delay(1);
  44   1          lcden=1;
  45   1          P0=(date<<4);
  46   1              delay(5);
  47   1              lcden=0;
  48   1      }
  49          void init()
  50          {
  51   1       delay(20);
  52   1      lcdrw=0;
  53   1      lcdrs=0;nop;
  54   1      lcden=0;nop;
  55   1      lcden=1;nop;
C51 COMPILER V7.05   LCDTEST                                                               04/19/2009 11:32:49 PAGE 2   

  56   1      P0=0x20;nop;
  57   1      lcden=0;delay(5);
  58   1      lcden=1;nop;
  59   1      P0=0x20;nop;
  60   1      lcden=0;delay(1);
  61   1      lcden=1;nop;
  62   1      P0=0x20;nop;
  63   1      lcden=0;
  64   1      //delay(1);
  65   1      write_com(0x01);//清屏
  66   1      write_com(0x28);//设置4位操作,1行显示,5x8
  67   1      write_com(0x02);//光标归位
  68   1      write_com(0x06);//AC自动加1,画面不动
  69   1      write_com(0x0c);//0x0f:光标闪烁开;  
  70   1      write_com(0x01);//清屏  
  71   1      }
  72          
  73          void main()
  74          {
  75   1          delay(15);
  76   1              init();
  77   1              write_com(0x80);
  78   1              for(num=0;num<11;num++)
  79   1              {
  80   2                      write_data(table[num]);
  81   2                      delay(5);
  82   2              }
  83   1              write_com(0x80+0x40);
  84   1              for(num=0;num<13;num++)
  85   1              {
  86   2                      write_data(table1[num]);
  87   2                      delay(5);
  88   2              }
  89   1              while(1);
  90   1      }
  91          void CheckLcdBusy()
  92          {uchar Temp,t;
  93   1          P0=0xff;
  94   1          lcdrw=1;
  95   1          lcdrs=0;nop;
  96   1          lcden=0;nop;
  97   1      do
  98   1       {nop;
  99   2       lcden=1;nop;
 100   2       Temp=P0;
 101   2       nop;nop;nop;
 102   2       lcden=0;nop;nop;
 103   2      delay(1);
 104   2      lcden=1;nop;
 105   2      t=P0;
 106   2      nop;nop;nop;
 107   2      lcden=0;nop;nop;
 108   2      
 109   2       Temp&=0x80;
 110   2       }while(Temp==0x80);
 111   1      }
 112          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    386    ----
   CONSTANT SIZE    =     26    ----
C51 COMPILER V7.05   LCDTEST                                                               04/19/2009 11:32:49 PAGE 3   

   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      1      10
   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 + -