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

📄 lcddrive.lst

📁 S52单片机对PS/2键盘的主从通信
💻 LST
字号:
C51 COMPILER V7.50   LCDDRIVE                                                              12/01/2006 12:32:58 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE LCDDRIVE
OBJECT MODULE PLACED IN lcddrive.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE lcddrive.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          
   2          //Port Definitions**********************************************************
   3          sbit LcdRs  = P1^0;
*** ERROR C202 IN LINE 3 OF LCDDRIVE.C: 'P1': undefined identifier
   4          sbit LcdRw  = P1^1;
*** ERROR C202 IN LINE 4 OF LCDDRIVE.C: 'P1': undefined identifier
   5          sbit LcdEn  = P1^2;
*** ERROR C202 IN LINE 5 OF LCDDRIVE.C: 'P1': undefined identifier
   6          sfr  DBPort = 0x80;  //P0=0x80,P1=0x90,P2=0xA0,P3=0xB0.数据端口
   7          
   8          sbit LcdLight   = DBPort^4;
   9          /***************************************************************************/
  10          void Delay1ms(unsigned int count)
  11          {
  12   1       unsigned int i,j;
  13   1       for(i=0;i<count;i++)
  14   1       for(j=0;j<120;j++);
  15   1      }
  16          //内部等待函数**************************************************************************
  17          unsigned char LCD_Wait(void)
  18          {
  19   1       LcdRs=0;
*** ERROR C202 IN LINE 19 OF LCDDRIVE.C: 'LcdRs': undefined identifier
  20   1       LcdRw=1; _nop_();
*** ERROR C202 IN LINE 20 OF LCDDRIVE.C: 'LcdRw': undefined identifier
  21   1       LcdEn=1; _nop_();
  22   1       while(DBPort&0x80);  //或do{ACC=DBPort;} while(ACC_7==1); 忙信号??为1忙
  23   1       LcdEn=0;
  24   1       Delay1ms(1);
  25   1       return ACC;  
  26   1      }
  27          
  28          void LCD_Write(unsigned char style, unsigned char input)
  29          {
  30   1       LcdRs=style;
  31   1       LcdRw=0;  _nop_();
  32   1       LcdEn=1;  _nop_();
  33   1       DBPort=input; _nop_();
  34   1       LcdEn=0;  _nop_();
  35   1       LCD_Wait(); 
  36   1      }
  37          
  38          
  39          
  40          void LCD_SetDisplay(unsigned char DisplayMode)
  41          {
  42   1       LCD_Write(LCD_COMMAND, 0x08|DisplayMode); 
  43   1      }
  44          
  45          
  46          
  47          void LCD_SetInput(unsigned char InputMode)
  48          {
  49   1       LCD_Write(LCD_COMMAND, 0x04|InputMode);
  50   1      }
C51 COMPILER V7.50   LCDDRIVE                                                              12/01/2006 12:32:58 PAGE 2   

  51          
  52          
  53          void LCD_Move(unsigned char object, unsigned char direction)
  54          {
  55   1       if(object==LCD_CURSOR)
  56   1        LCD_Write(LCD_COMMAND,0x10|direction);
  57   1       if(object==LCD_SCREEN)
  58   1        LCD_Write(LCD_COMMAND,0x18|direction);
  59   1      }
  60          
  61          //初始化LCD************************************************************
  62          void LCD_Initial()
  63          {
  64   1       LcdEn=0;
  65   1       Delay1ms(80);
  66   1       LCD_Write(LCD_COMMAND,0x38);           //8位数据端口,2行显示,5*7点阵
  67   1       Delay1ms(10);
  68   1       LCD_Write(LCD_COMMAND,0x38);
  69   1       Delay1ms(10);
  70   1       LCD_SetDisplay(LCD_SHOW|LCD_CURSOR);    //开启显示, 无光标
  71   1       //LCD_SetDisplay(LCD_SHOW|LCD_NO_CURSOR);    //开启显示, 无光标
  72   1       LCD_Write(LCD_COMMAND,LCD_CLEAR_SCREEN);          //清屏
  73   1       LCD_SetInput(LCD_AC_UP|LCD_NO_MOVE);       //AC递增, 画面不动
  74   1      }
  75          
  76          //************************************************************************
  77          void GotoXY(unsigned char x, unsigned char y)//y是行 ,x是列
  78          {
  79   1       if(y==0)
  80   1        LCD_Write(LCD_COMMAND,0x80|x);
  81   1       if(y==1)
  82   1        LCD_Write(LCD_COMMAND,0x80|(x-0x40));
  83   1      }
  84          void Print(unsigned char *str)
  85          {
  86   1       while(*str!='\0')
  87   1       {
  88   2        LCD_Write(LCD_DATA,*str);
  89   2        str++;
  90   2       }
  91   1      }
  92          void LCD_LoadChar(unsigned char user[8], unsigned char place)
  93          {
  94   1       unsigned char i;
  95   1       LCD_Write(LCD_COMMAND,0x40|(place*8));
  96   1       for(i=0; i<8; i++)
  97   1         LCD_Write(LCD_DATA,user[i]);
  98   1      }
  99          //************************************************************************
 100          /*main()
 101          {  
 102             //unsigned char str1[17];
 103             unsigned char str[]=" Six Boys ";
 104             unsigned char strlc[]="  Good Luck!  ";
 105             LCD_Initial();
 106             while(1)
 107             {
 108               GotoXY(0, 0);
 109               Print(str);
 110               if(strlen(str)>16) 
 111               Print(str+16);
 112          
C51 COMPILER V7.50   LCDDRIVE                                                              12/01/2006 12:32:58 PAGE 3   

 113                   GotoXY(0, 1);
 114               Print(strlc);
 115               if(strlen(strlc)>16) 
 116               Print(strlc+16);
 117          
 118               //LCD_LoadChar(str, 0);
 119             }
 120          }*/
 121          
 122          

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

⌨️ 快捷键说明

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