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

📄 lcda1098.lst

📁 c8051F020 液晶显示的程序 也许有用
💻 LST
字号:
C51 COMPILER V7.20   LCDA1098                                                              10/18/2005 11:14:17 PAGE 1   


C51 COMPILER V7.20, COMPILATION OF MODULE LCDA1098
OBJECT MODULE PLACED IN LCDA1098.OBJ
COMPILER INVOKED BY: c:\KEIL\C51\BIN\C51.exe LCDA1098.c DB OE

line level    source

   1          
   2          //-----------------------------------------------------------------------------
   3          // 版权归新华龙电子公司所有
   4          //-----------------------------------------------------------------------------
   5          //
   6          // 文件名:LCD.c
   7          //
   8          // 编写人:LC
   9          //
  10          // 编写时间:2004/12/31
  11          //
  12          // 目标器件: C8051F31x
  13          //
  14          // 编译工具: Silicon Laboratories IDE
  15          //
  16          //-----------------------------------------------------------------------------
  17          //程序描述:
  18          //  这个程序可以在该液晶模块上显示二行字符:Welcom To NCD,www.xhl.com.cn
  19          //  此程序用8位数据线来驱动液晶
  20          //
  21          //-----------------------------------------------------------------------------
  22          // 头文件包含
  23          //-----------------------------------------------------------------------------
  24          #include <c8051f020.h>                 
  25          
  26          //-----------------------------------------------------------------------------
  27          //全局变量定义
  28          //-----------------------------------------------------------------------------
  29          
  30                                          //---------------------------------------------------
  31          unsigned long x;                 //w    w   w    .    x     h   l     .   c     o    |
  32          unsigned char xdata Netdata[15]={0x77,0x77,0x77,0x2e,0x78,0x68,0x6c,0x2e,0x63,0x6f,//|
  33                                          0x6d,0x2e,0x63,0x6e};//                              |
  34                                         //m     .    c    n                                   |
  35                                         //-----------------------------------------------------
  36          unsigned char xdata NCDdata[15]={0x57,0x65,0x6c,0x63,0x6f,0x6d,0x65,0x20,0x74,0x6f,//|
  37                                          0x20,0x4e,0x43,0x44};//                              |
  38          unsigned char *lcdpoint;         //指向 lcddata数组的指针
  39          unsigned char lcd_data_count;        //要显示的数据个数 
  40          //-----------------------------------------------------------------------------
  41          // 函数定义
  42          //-----------------------------------------------------------------------------
  43          void SYSCLK_Init (void);
  44          void PORT_Init (void);
  45          void LCD_Init(void);
  46          void SEND_LCD(unsigned char lcd_data_count);
  47          //-----------------------------------------------------------------------------
  48          // 主程序
  49          //-----------------------------------------------------------------------------
  50          void main (void)
  51           {
  52   1              static unsigned char data1,data2;
  53   1          WDTCN = 0xde;
  54   1          WDTCN = 0xad;                       //禁止看门狗定时器
  55   1      
C51 COMPILER V7.20   LCDA1098                                                              10/18/2005 11:14:17 PAGE 2   

  56   1          SYSCLK_Init ();                        // 系统时钟初始化
  57   1                                                
  58   1          PORT_Init ();                          // 交叉开关和通用I/O口初始化
  59   1              while(1){
  60   2                  LCD_Init();                            //LCD初始化
  61   2                  P6  = 0x0d;                             //准备送数据
  62   2                  for(x=0;x<5000;x++);
  63   2                  lcdpoint=&NCDdata;
  64   2                  for(lcd_data_count=14;lcd_data_count>0;lcd_data_count--)     //显示第一行字符
  65   2                  { 
  66   3                          data1=*lcdpoint;
  67   3                          P7 = data1; 
  68   3                              P6 = 0x0c;
  69   3                      P6 = 0x0d;
  70   3                              lcdpoint++;
  71   3                              for(x=0;x<100;x++);
  72   3                      }
  73   2                      P6 = 0x09;
  74   2                      P7 = 0xc0;
  75   2                      P6 = 0x08;
  76   2                      P6 = 0x09;
  77   2                      //P6 = 0x0c;
  78   2                      //P6 = 0x0d;
  79   2                      for(x=0;x<1000;x++);
  80   2                  lcdpoint=&Netdata;
  81   2                  for(lcd_data_count=14;lcd_data_count>0;lcd_data_count--)     //显示第一行字符
  82   2                  { 
  83   3                          data1=*lcdpoint;
  84   3                          P7 = data1; 
  85   3                              P6 = 0x0c;
  86   3                      P6 = 0x0d;
  87   3                              lcdpoint++;
  88   3                              for(x=0;x<100;x++);
  89   3                      }
  90   2              }
  91   1      }
*** WARNING C280 IN LINE 52 OF LCDA1098.C: 'data2': unreferenced local variable
  92          
  93          //-----------------------------------------------------------------------------
  94          //函数名称:      SYSCLK_Init ()
  95          //函数功能:      系统时钟初始化
  96          //入口参数:      无
  97          //出口参数:      无
  98          //全局变量引用:  无
  99          //调用模块:      无 
 100          //-----------------------------------------------------------------------------
 101          //
 102          void SYSCLK_Init (void)
 103          {
 104   1      
 105   1         OSCICN = 0x05;                          // 系统时钟初始化为片内的 24.5MHz / 8                       
 106   1                                               
 107   1       }
 108          
 109          //-----------------------------------------------------------------------------
 110          //函数名称:     PORT_Init  ()
 111          //函数功能:      通用I/O口及交叉开关初始化
 112          //入口参数:      无
 113          //出口参数:      无
 114          //全局变量引用:  无
 115          //调用模块:      无  
 116          //-----------------------------------------------------------------------------
C51 COMPILER V7.20   LCDA1098                                                              10/18/2005 11:14:17 PAGE 3   

 117          
 118          void PORT_Init (void)
 119          {
 120   1      
 121   1         XBR0     = 0x00;                       // 没有选择数字外设
 122   1         P74OUT  = 0xff;                       // P0口设为推挽方式
 123   1      }
 124          //-----------------------------------------------------------------------------
 125          // //函数名称:   LCD_Init ()
 126          //函数功能:      LCD初始化
 127          //入口参数:      无
 128          //出口参数:      无
 129          //全局变量引用:  无
 130          //调用模块:      无  
 131          //-----------------------------------------------------------------------------
 132          void LCD_Init(void)
 133          {
 134   1              P6 = 0x09;
 135   1              for(x=0;x<50000;x++);
 136   1         //P7 = 0x30;                         /*一行显示*/
 137   1         P7 = 0x38;                           /*两行显示*/
 138   1         P6 = 0x08;
 139   1         P6 = 0x09; 
 140   1         for(x=0;x<1000;x++);
 141   1         P7 = 0x0e;                           /*开显示,开光标,字符不闪烁*/
 142   1         P6 = 0x08;
 143   1         P6 = 0x09;
 144   1         for(x=0;x<1000;x++);
 145   1         P7= 0x06;                            /*I/D=1,AC自动增1;S=0,整体显示不移动*/
 146   1         P6 = 0x08;
 147   1         P6 = 0x09;
 148   1         for(x=0;x<5000;x++);
 149   1         P7 = 0x01;                           /*清除DDRAM,置AC=0*/
 150   1         P6 = 0x08;
 151   1         P6 = 0x09; 
 152   1         for(x=0;x<5000;x++);
 153   1      
 154   1      }


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