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

📄 lcm.lst

📁 1602LCD程序
💻 LST
字号:
C51 COMPILER V7.50   LCM                                                                   04/02/2006 23:50:45 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE LCM
OBJECT MODULE PLACED IN lcm.OBJ
COMPILER INVOKED BY: H:\Program Files\Keil\C51\BIN\C51.EXE lcm.c DEBUG OBJECTEXTEND

line level    source

   1          #include<reg52.h>
   2          #include<stdio.h>
   3          #include<absacc.h>
   4          #include<intrins.h>
   5          /**************针脚定义************/
   6          sbit RS=P1^0;
   7          sbit RW=P1^1;
   8          sbit EN=P1^2;
   9          sbit DATA=P1^4;
  10          sbit CLK=P1^5;
  11          sbit CLR=P1^3;
  12          /**************函数声明************/
  13          void clrlcd(void);                                 //clr LCD
  14          void c_send(unsigned char y);                         //发命令
  15          void reset(void);                                 // reset LCD
  16          void d_send(unsigned char x);                     //发数据
  17          void pos(unsigned char posx);                     //设定显示位置
  18          void l_delay(unsigned int t);                      //长延时
  19          /**************延时子程序**********************/
  20          delay()                        //延时
  21          {
  22   1         int i;
  23   1                for(i=0;i<30000;i++);
  24   1      }
  25          /***********************************************/
  26          void l_delay(unsigned int t)                        //延时
  27          {
  28   1        unsigned int p;
  29   1        unsigned int j;
  30   1      
  31   1           for(j=0;j<t;j++)
  32   1            {
  33   2                   for(p=0;p<2000;p++);
  34   2            }
  35   1      }
  36          /***********************************************/
  37          void reset(void)               // reset LCD
  38          {
  39   1           delay();
  40   1          c_send(0x38);
  41   1          c_send(0x01);
  42   1          c_send(0x06);
  43   1          c_send(0x0c);
  44   1          c_send(0x80);
  45   1      }
  46          /***********************************************/
  47          void clrlcd(void)               // clr LCD
  48          {
  49   1           delay();
  50   1          c_send(0x01);
  51   1      
  52   1      }
  53          /***********************************************/
  54          void pos(unsigned char posx,unsigned char posy)        //设定显示位置
  55          {
C51 COMPILER V7.50   LCM                                                                   04/02/2006 23:50:45 PAGE 2   

*** WARNING C236 IN LINE 55 OF LCM.C: '_pos': different length of parameter lists
  56   1       unsigned char temp;
  57   1        temp =  posx & 0xf;
  58   1        posy &= 0x1;
  59   1        if (posy) temp |= 0x40; 
  60   1        c_send(temp | 0x80);
  61   1      }
  62          /***********************************************/
  63          void c_send(unsigned char y)         //发命令
  64          {
  65   1        unsigned char i;
  66   1        EN=1;
  67   1        RS=0;
  68   1        RW=0;
  69   1        for(i=0;i<8;i++)
  70   1          {
  71   2             if(_crol_(y,i)&0x80)
  72   2                  DATA=1;
  73   2             else
  74   2                  DATA=0;
  75   2            CLK=0;
  76   2            CLK=1;
  77   2               }
  78   1        EN=0;
  79   1        delay();
  80   1      }
  81          /**************************************************/
  82          void d_send(unsigned char x)     //发数据
  83          {
  84   1        unsigned char i;
  85   1        EN=1;
  86   1        RS=1;
  87   1        RW=0;
  88   1        for(i=0;i<8;i++)
  89   1          {
  90   2             if(_crol_(x,i)&0x80)
  91   2                  DATA=1;
  92   2             else
  93   2                  DATA=0;
  94   2            CLK=0;
  95   2            CLK=1;
  96   2               }
  97   1        EN=0;
  98   1        delay();
  99   1      }
 100          /***********************************/
 101          main()
 102          {   
 103   1      while (1)
 104   1      {
 105   2          reset();
 106   2          pos(0,0);
 107   2          d_send('O');
 108   2          d_send('h');
 109   2          d_send(' ');
 110   2          d_send('S');
 111   2          d_send('h');
 112   2          d_send('i');
 113   2          d_send('t');
 114   2          d_send('!');
 115   2          d_send('!');
 116   2          d_send('!');
C51 COMPILER V7.50   LCM                                                                   04/02/2006 23:50:45 PAGE 3   

 117   2          d_send('!');
 118   2              delay();
 119   2          
 120   2           }    
 121   1          
 122   1      }
 123          
 124          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    251    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  1 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -