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

📄 lcd1602.lst

📁 一种多功能频率计
💻 LST
字号:
C51 COMPILER V8.08   LCD1602                                                               09/23/2008 07:30:52 PAGE 1   


C51 COMPILER V8.08, COMPILATION OF MODULE LCD1602
OBJECT MODULE PLACED IN lcd1602.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE lcd1602.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /*********************************************************** 
   2          文件名称: lcd1602.c
   3          作 者:   芦达
   4          版 本:   1.0
   5          说 明:   LCM函数
   6          修改记录: 
   7          ***********************************************************/
   8          #include <reg52.h>
   9          #include <lcd1602.h>
  10          #include <delay.h>
  11          
  12          char int2charLCD[20];
  13          /*********************************************************** 
  14          函数名称: write_LCD_command
  15          函数功能: 将命令写入LCM
  16          入口参数: 
  17          出口参数: 
  18          备 注: 
  19          ***********************************************************/ 
  20          void write_LCD_command(unsigned command)
  21          {
  22   1              LCD_RS=COMMAND;
  23   1              LCD_ENABLE=ENABLE;
  24   1              P0=command;
  25   1              DelayNS(20);
  26   1              LCD_ENABLE=DISABLE;
  27   1              P0=0;
  28   1      }
  29          /*********************************************************** 
  30          函数名称:      write_LCD_data
  31          函数功能:      将数据写入LCM
  32          入口参数: 
  33          出口参数: 
  34          备 注: 
  35          ***********************************************************/ 
  36          void write_LCD_data(unsigned LCDdata)
  37          {
  38   1              LCD_RS=DATA;
  39   1              LCD_ENABLE=ENABLE;
  40   1              P0=LCDdata;
  41   1              DelayNS(20);
  42   1              LCD_ENABLE=DISABLE;
  43   1              P0=0;
  44   1      }
  45          /*********************************************************** 
  46          函数名称:      init_LCD
  47          函数功能:      初始化LCM
  48          入口参数: 
  49          出口参数: 
  50          备 注: 
  51          ***********************************************************/ 
  52          void init_LCD(void)
  53          {
  54   1              P0=0;
  55   1              dula=0;
C51 COMPILER V8.08   LCD1602                                                               09/23/2008 07:30:52 PAGE 2   

  56   1              wela=0;
  57   1              write_LCD_command(TwoLine_8bit);
  58   1              write_LCD_command(CURSOR_OFF);
  59   1              write_LCD_command(CURSOR_RIGHT);
  60   1      }
  61          /*********************************************************** 
  62          函数名称:      clear_LCD
  63          函数功能:      LCM     清屏
  64          入口参数: 
  65          出口参数: 
  66          备 注: 
  67          ***********************************************************/ 
  68          void clear_LCD(void)
  69          {
  70   1              write_LCD_command(LCD_CLEAR);
  71   1              write_LCD_command(CURSOR_HOME);
  72   1      }
  73          /*********************************************************** 
  74          函数名称:      display_LCD
  75          函数功能:      LCM显示字符串
  76          入口参数: 
  77          出口参数: 
  78          备 注: 
  79          ***********************************************************/ 
  80          void display_LCD_string(char *p)
  81          {
  82   1              while (*p)
  83   1              {
  84   2                      write_LCD_data(*p);
  85   2                      p++;
  86   2              }
  87   1      }
  88          /*********************************************************** 
  89          函数名称:      gotoxy
  90          函数功能:      设置位置
  91          入口参数: 
  92          出口参数: 
  93          备 注: 
  94          ***********************************************************/ 
  95          void gotoxy(unsigned x,unsigned y)
  96          {
  97   1              if (x==1)
  98   1                      write_LCD_command(GOTO_LINE_1+y);
  99   1              else 
 100   1                      write_LCD_command(GOTO_LINE_2+y);
 101   1      }
 102          /*********************************************************** 
 103          函数名称:      display_LCD_number
 104          函数功能:      LCM显示数字
 105          入口参数: 
 106          出口参数: 
 107          备 注: 
 108          ***********************************************************/ 
 109          void display_LCD_number(unsigned long number,unsigned char dotwei)
 110          {       unsigned char x;
 111   1          unsigned long y=number ;
 112   1              unsigned char count=0;
 113   1              if (y==0)
 114   1              {
 115   2              write_LCD_data('0');
 116   2              }
 117   1              else
C51 COMPILER V8.08   LCD1602                                                               09/23/2008 07:30:52 PAGE 3   

 118   1               {
 119   2                      while (y)
 120   2                               {  x=y%10;
 121   3                      y=y/10;
 122   3                              int2charLCD[count]=x+'0';
 123   3                                      count++;
 124   3                              }
 125   2              
 126   2         while(count<=dotwei)
 127   2              {
 128   3              int2charLCD[count]='0';
 129   3              count++;
 130   3              }
 131   2              int2charLCD[count]=0;
 132   2              for (x=count-1;x<20;x--)
 133   2              {
 134   3                  if((x+1)==dotwei) write_LCD_data('.');
 135   3                      write_LCD_data(int2charLCD[x]);
 136   3                      }
 137   2              for(;count<20;count++)
 138   2                 write_LCD_data(' ');
 139   2              }       
 140   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    349    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     20      16
   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 + -