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

📄 alcda.lst

📁 c8051f020源代码39个 使用Silicon Labs IDE 调试器
💻 LST
字号:
C51 COMPILER V7.05   ALCDA                                                                 02/14/2006 08:47:54 PAGE 1   


C51 COMPILER V7.05, COMPILATION OF MODULE ALCDA
OBJECT MODULE PLACED IN ALCDA.OBJ
COMPILER INVOKED BY: C:\SiLabs\MCU\IDEfiles\C51\BIN\C51.exe ALCDA.c DB OE

stmt level    source

   1          /*参考程序B.LCDA.c程序功能;在该液晶模块上显示二行字符:
   2          Welcom To NCD
   3          www.xhl.com.cn*/
   4          #include <c8051f020.h>                 
   5          unsigned long x;  //www.xhl.com.cn
   6          unsigned        char    xdata Netdata[15]={0x77,0x77,0x77,0x2e,0x78,0x68,0x6c,0x2e,0x63,0x6f,//|
   7                                          0x6d,0x2e,0x63,0x6e};//                              |
   8              unsigned    char    xdata NCDdata[15]={0x57,0x65,0x6c,0x63,0x6f,0x6d,0x65,0x20,0x74,0x6f,//|
   9                                          0x20,0x4e,0x43,0x44};//                              |
  10          unsigned char *lcdpoint;         //指向 lcddata数组的指针
  11          unsigned char lcd_data_count;        //要显示的数据个数 
  12          void SYSCLK_Init (void);
  13          void PORT_Init (void);
  14          void LCD_Init(void);
  15          void SEND_LCD(unsigned char lcd_data_count);
  16          void main (void)
  17           {
  18   1      static unsigned char data1,data2;
  19   1          WDTCN = 0xde;
  20   1          WDTCN = 0xad;                       //禁止看门狗定时器
  21   1          SYSCLK_Init ();                        // 系统时钟初始化
  22   1                                                
  23   1          PORT_Init ();                          // 交叉开关和通用I/O口初始化
  24   1              while(1){
  25   2                  LCD_Init();                            //LCD初始化
  26   2                  //P6  = 0x0d;                             //准备送数据
  27   2                  for(x=0;x<5000;x++);
  28   2                  lcdpoint=&NCDdata;
  29   2                  for(lcd_data_count=14;lcd_data_count>0;lcd_data_count--)     //显示第一行字符
  30   2                  { 
  31   3                          data1=*lcdpoint;
  32   3                          P7 = data1; //向LCD送数据
  33   3                              P6 = 0x05;
  34   3                      P6 = 0x04;
  35   3                              lcdpoint++;
  36   3                              for(x=0;x<100;x++);
  37   3                      }
  38   2                          P7 = 0xc0;
  39   2                      P6 = 0x1;       
  40   2                      P6 = 0x0;               
  41   2                      for(x=0;x<1000;x++);
  42   2                  lcdpoint=&Netdata;
  43   2                  for(lcd_data_count=14;lcd_data_count>0;lcd_data_count--)     //显示第一行字符
  44   2                  { 
  45   3                          data1=*lcdpoint;   //向LCD送数据
  46   3                          P7 = data1; 
  47   3                              P6 = 0x04;
  48   3                      P6 = 0x05;
  49   3                              lcdpoint++;
  50   3                              for(x=0;x<100;x++);
  51   3                      }
  52   2              }
  53   1      }
*** WARNING C280 IN LINE 18 OF ALCDA.C: 'data2': unreferenced local variable
  54          //函数名称:      SYSCLK_Init ()
C51 COMPILER V7.05   ALCDA                                                                 02/14/2006 08:47:54 PAGE 2   

  55          //函数功能:      系统时钟初始化
  56          void SYSCLK_Init (void)
  57          {
  58   1      
  59   1         OSCICN = 0x05;                          // 系统时钟初始化为片内的 24.5MHz / 8                       
  60   1                                               
  61   1       }
  62          void PORT_Init (void)
  63          {
  64   1         XBR0     = 0x00;                       // 没有选择数字外设
  65   1         P74OUT  = 0xf0;                       // P6,P7口设为推挽方式
  66   1      }
  67          void LCD_Init(void) //向LCD送命令
  68          {
  69   1              P6 = 0x01;
  70   1              for(x=0;x<50000;x++);
  71   1         //P7 = 0x30;                         /*一行显示*/
  72   1         P7 = 0x38;                           /*两行显示*/
  73   1         P6 = 0x1;
  74   1         P6 = 0x0;                //向LCD送命令
  75   1         for(x=0;x<1000;x++);
  76   1         P7 = 0x0e;                           /*开显示,开光标,字符不闪烁*/
  77   1         P6 = 0x1;
  78   1         P6 = 0x0;
  79   1         for(x=0;x<1000;x++);
  80   1         P7= 0x06;                            /*I/D=1,AC自动增1;S=0,整体显示不移动*/
  81   1         P6 = 0x1;
  82   1         P6 = 0x0;
  83   1         for(x=0;x<5000;x++);
  84   1         P7 = 0x01;                           /*清除DDRAM,置AC=0*/
  85   1         P6 = 0x1;
  86   1         P6 = 0x0; 
  87   1         for(x=0;x<5000;x++);
  88   1      }
  89           
  90          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    646    ----
   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 + -