1602

来自「1602字符滚动显示」· 代码 · 共 113 行

TXT
113
字号
C51 COMPILER V8.02   1602字符_篲Ч_动显蔩                                                  08/08/2012 10:42:31 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE 1602字符_篲Ч_动显蔩
OBJECT MODULE PLACED IN 1602字符液晶滚动显示.OBJ
COMPILER INVOKED BY: F:\keil\C51\BIN\C51.EXE 1602字符液晶滚动显示.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include<reg51.h>
   2          #define uchar unsigned char 
   3          #define uint unsigned int
   4          sbit rs=P2^0;
   5          sbit rw=P2^1;
   6          sbit en=P2^2;
   7          uchar code tab1[]= "I LIKE MCU";
   8          uchar code tab2[]="I LOVE YOU";
   9          void delay(uint z)
  10          {
  11   1              uint x,y;
  12   1              for(x=z;x>0;x--)
  13   1                      for(y=112;y>0;y--);
  14   1      }
  15          uchar busy_check()
  16          {
  17   1              uchar state;
  18   1              rs=0;
  19   1              rw=1;
  20   1              delay(5);
  21   1              en=1;
  22   1              state=P0;
  23   1              delay(5);
  24   1              en=0;
  25   1              delay(5);
  26   1              return state;
  27   1      }
  28          void write_com(uchar com)
  29          {
  30   1              while((busy_check()&0x80)==0x80);
  31   1              rs=0;
  32   1              rw=0;
  33   1              delay(5);
  34   1              en=1;
  35   1              P0=com;
  36   1              delay(5);
  37   1              en=0;
  38   1              delay(5);
  39   1      }
  40          void write_data(uchar dat)
  41          {
  42   1              while((busy_check()&0x80)==0x80);
  43   1              rs=1;
  44   1              rw=0;
  45   1              delay(5);
  46   1              en=1;
  47   1              P0=dat;
  48   1              delay(5);
  49   1              en=0;
  50   1              delay(5);
  51   1      }
  52          void init()
  53          {
  54   1              write_com(0x38);
  55   1              write_com(0x0c);
C51 COMPILER V8.02   1602字符_篲Ч_动显蔩                                                  08/08/2012 10:42:31 PAGE 2   

  56   1              write_com(0x06);
  57   1              write_com(0x01);
  58   1      }
  59          void main()
  60          {
  61   1              uchar i;
  62   1              init();
  63   1              write_com(0x80+0x03);
  64   1              for(i=0;i<10;i++)
  65   1              {
  66   2                      write_data(tab1[i]);
  67   2                      delay(50);
  68   2              }
  69   1              write_com(0x80+0x43);
  70   1              for(i=0;i<10;i++)
  71   1              {
  72   2                      write_data(tab2[i]);
  73   2                      delay(50);
  74   2              }                                        
  75   1              for(i=0;i<13;i++)
  76   1              {
  77   2                      write_com(0x1c);
  78   2                      delay(200);
  79   2              }
  80   1              for(i=0;i<16;i++)
  81   1              {
  82   2                      write_com(0x18);
  83   2                      delay(200);
  84   2              }
  85   1              write_com(0x01);
  86   1              delay(500);
  87   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    240    ----
   CONSTANT SIZE    =     22    ----
   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 + =
减小字号Ctrl + -
显示快捷键?