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

📄 lcd.lst

📁 单片机与a7105组成无线收发程序2.4G多通道
💻 LST
字号:
C51 COMPILER V7.06   LCD                                                                   10/29/2008 11:22:41 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE LCD
OBJECT MODULE PLACED IN lcd.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE source\lcd.c ROM(COMPACT) BROWSE DEBUG OBJECTEXTEND PRINT(.\lcd.lst) OBJECT
                    -(lcd.obj)

stmt level    source

   1          /************************************************************************
   2          ;copyright              :shenzhen coolwaveasia
   3          ;filename               :lcd.c
   4          ;lcd                    :TC802B-01
   5          ;control mcu    :w78e52b
   6          ;writeby                :dengyihong
   7          ;describe               :LCD control
   8          ;notice                 :
   9          ;***********************************************************************/
  10          
  11          #include "..\header\lcd.h"
  12          
  13          /***********************************************************
  14          name:           ini_lcd         
  15          input:          none
  16          output:         none
  17          describe:       初始化LCD       
  18          notice:
  19          creat date: 2008-7-25
  20          creator:        dengyihong
  21          ************************************************************/
  22          void ini_lcd(void)
  23          {
  24   1          lcd_write_reg(0x38);
  25   1          lcd_write_reg(0x38);
  26   1          lcd_write_reg(0x38);
  27   1          lcd_write_reg(0x08);
  28   1          lcd_wait();
  29   1          lcd_write_reg(0x01);
  30   1          lcd_wait();
  31   1          delay_2us(50000);
  32   1          
  33   1          lcd_write_reg(0x14);
  34   1          lcd_wait();
  35   1          lcd_write_reg(0x06);
  36   1          lcd_wait();
  37   1          lcd_write_reg(0x80);
  38   1          lcd_wait();
  39   1          lcd_write_reg(0x0c);
  40   1          lcd_wait(); 
  41   1      }
  42          
  43          
  44          /***********************************************************
  45          name:           lcd_printf_string       
  46          input:          *disp_str  ---  存放显示字符的头指针
  47                                  row_len_col  ---  显示坐标参数及显示字符数
  48                                  row_len_col:
  49                                          bit[7:6]: 显示行坐标
  50                                          bit[5:3]: 显示字符长度
  51                                          bit[2:0]: 显示字符的起始列坐标
  52          output:         none
  53          describe:       在屏幕上显示多个字符            
  54          notice:
C51 COMPILER V7.06   LCD                                                                   10/29/2008 11:22:41 PAGE 2   

  55          creat date: 2008-7-25
  56          creator:        dengyihong
  57          ************************************************************/
  58          void lcd_printf_string(U8 *disp_str, U8 row_len_col)
  59          {
  60   1          U8 i = 0;
  61   1          U8 len = 0;
  62   1          
  63   1          len = (row_len_col & LEN_MASK) >> 0x03;
  64   1          
  65   1          lcd_write_reg(row_len_col & ROW_COL);
  66   1          lcd_wait();
  67   1          
  68   1          for(i=0; i<=len; i++)
  69   1          {
  70   2              lcd_write_data(*disp_str++);
  71   2              lcd_wait();     
  72   2          }
  73   1      }
  74          
  75          
  76          /***********************************************************
  77          name:           lcd_printf_char         
  78          input:          disp_char  ---  要显示的字符
  79                                  row_col    ---  显示坐标
  80          output:         none
  81          describe:       在屏幕上显示一个字符            
  82          notice:
  83          creat date: 2008-7-25
  84          creator:        dengyihong
  85          ************************************************************/
  86          /*
  87          void lcd_printf_char(U8 disp_char, U8 row_col)
  88          {
  89              lcd_write_reg(row_col & ROW_COL);
  90              lcd_wait();
  91              lcd_write_data(disp_char);
  92              lcd_wait(); 
  93          }
  94          */
  95          
  96          /***********************************************************
  97          name:           lcd_write_reg           
  98          input:          command  ---  要写入的命令
  99          output:         none
 100          describe:       写控制命令到LCD 
 101          notice:
 102          creat date: 2008-7-25
 103          creator:        dengyihong
 104          ************************************************************/
 105          void lcd_write_reg(U8 command)
 106          {
 107   1          LCD_DATA = command;         // 写控制命令
 108   1          LCD_RS = 0;
 109   1          LCD_RW = 0;
 110   1          LCD_EN = 1;
 111   1          delay_2us(100);
 112   1          LCD_EN = 0;
 113   1      }
 114          
 115          
 116          /***********************************************************
C51 COMPILER V7.06   LCD                                                                   10/29/2008 11:22:41 PAGE 3   

 117          name:           lcd_write_data          
 118          input:          value  ---  要写入的数据
 119          output:         none
 120          describe:       写数据到LCD     
 121          notice:
 122          creat date: 2008-7-25
 123          creator:        dengyihong
 124          ************************************************************/
 125          void lcd_write_data(U8 value)
 126          {
 127   1         LCD_DATA =  value;           //写数据
 128   1         LCD_RS = 1;
 129   1         LCD_RW = 0;
 130   1         LCD_EN = 1;
 131   1         delay_2us(100);
 132   1         LCD_EN = 0;  
 133   1      }
 134          
 135          /***********************************************************
 136          name:           lcd_wait        
 137          input:          none
 138          output:         none
 139          describe:       等待LCD内部操作完成     
 140          notice:
 141          creat date: 2008-7-25
 142          creator:        dengyihong
 143          ************************************************************/
 144          void lcd_wait(void)
 145          {
 146   1          U8 value = 0;
 147   1             
 148   1          do
 149   1          {
 150   2              LCD_RS = 0;
 151   2              LCD_RW = 1;
 152   2              LCD_EN = 1;
 153   2              value = LCD_DATA;       
 154   2              LCD_EN = 0;
 155   2          }while(value & 0x80);               // 等待内部操作完成     
 156   1      }
 157          


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