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

📄 1602.lst

📁 1602显示测试程序
💻 LST
字号:
C51 COMPILER V6.23a  1602                                                                  12/30/2004 13:29:25 PAGE 1   


C51 COMPILER V6.23a, COMPILATION OF MODULE 1602
OBJECT MODULE PLACED IN 1602.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 1602.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          /* This program is a example */
   2          #include <reg51.h>
   3          #include <intrins.h>
   4          #define uchar unsigned  char
   5          #define uint unsigned   int
   6          #define LCDCLRCMD               0X01
   7          #define LCDIPMODECMD    0X06
   8          #define LCDDISPCMD              0X0C
   9          #define LCDDISPCMD2             0X0D
  10          #define LCDCURSHIFTCMD  0X10
  11          #define LCDRETURNCMD    0X02
  12          #define LCDFUCCMD               0X38
  13          /*BIT*/
  14          sbit    RS=P2^5;
  15          sbit    RW=P2^6;
  16          sbit    EN=P2^7;
  17          sbit    LGT=P1^0;
  18          /*function*/
  19          void    LCDCMDSET(uchar CMD,uint DLT);
  20          void    LCDDDRAMSET(uchar  LCDLCDADDR);
  21          void    LCDDATAWRITE(uchar       LCDDATA);
  22          void    DELAY(uint  T);
  23          void    DISPSTR(uchar code *str);
  24          uchar code STRING1[]={"CHEAP MAN.......CHEAP MAN......."};
  25          uchar code STRING2[]={"OH YEAH.........OH YEAH........."};
  26          void    DELAY(uint  T)
  27          {
  28   1              uchar i;
  29   1              while(T)
  30   1              {
  31   2                       T--;
  32   2                      for(i=0;i<10;i++)_nop_();
  33   2              }       
  34   1      }
  35          void    LCDCMDSET(uchar CMD,uint DLT)
  36          {
  37   1              RS=0;
  38   1              RW=0;
  39   1              P0=CMD;
  40   1              EN=1;
  41   1              EN=0;   //r/w at the falling adge
  42   1              DELAY(DLT);
  43   1      }
  44          void    LCDDDRAMSET(uchar LCDADDR)
  45          {       
  46   1              RS=0;
  47   1              RW=0;
  48   1              LCDADDR=LCDADDR|0x80;
  49   1              P0=LCDADDR;
  50   1              EN=1;
  51   1              EN=0;
  52   1              DELAY(4);       
  53   1      }
  54          void    LCDDATAWRITE(uchar  LCDDATA)
  55          {       
C51 COMPILER V6.23a  1602                                                                  12/30/2004 13:29:25 PAGE 2   

  56   1              RS=1;
  57   1              RW=0;
  58   1              P0 =LCDDATA;
  59   1              EN=1;
  60   1              EN=0;   
  61   1              DELAY(4);
  62   1      }
  63          void DISPSTR(uchar code *str)
  64          {
  65   1              uchar data i;
  66   1              LCDDDRAMSET(0x00);
  67   1              for(i=0;i<16;i++)
  68   1              {       
  69   2                      LCDDATAWRITE(*str++);
  70   2              }
  71   1              LCDDDRAMSET(0x40);
  72   1      
  73   1              for(i=0;i<16;i++)
  74   1              {       
  75   2                      LCDDATAWRITE(*str++);
  76   2              }
  77   1      }
  78          void    LCDINIT()
  79          {
  80   1              LCDCMDSET(LCDCLRCMD,200);
  81   1              LCDCMDSET(LCDIPMODECMD,4);
  82   1              LCDCMDSET(LCDDISPCMD2,4);
  83   1              LCDCMDSET(LCDFUCCMD,4);
  84   1              LCDCMDSET(LCDRETURNCMD,200);
  85   1      }
  86          void    main()
  87          {
  88   1              LCDINIT();
  89   1              while(1)
  90   1              {
  91   2                      LGT = !LGT;
  92   2                      if(LGT==0)
  93   2                      {
  94   3                              DISPSTR(STRING2);
  95   3                      }               
  96   2                      if(LGT==1)
  97   2                      {
  98   3                              DISPSTR(STRING1);
  99   3                      }
 100   2                      DELAY(20000);
 101   2              }
 102   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    202    ----
   CONSTANT SIZE    =     66    ----
   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 + -