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

📄 main.lst

📁 手把手教你单片机
💻 LST
字号:
C51 COMPILER V7.08   MAIN                                                                  12/26/2010 11:33:30 PAGE 1   


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

line level    source

   1          /*
   2           * 1602
   3          */
   4          
   5          #include <reg52.h>
   6          #include <intrins.h> 
   7          
   8          typedef unsigned char uint8;
   9          
  10          sbit RS = P1^0 ;
  11          sbit RW = P1^1 ;
  12          sbit EN = P1^5 ;
  13          sbit BUSY = P0^7;
  14          
  15          
  16          unsigned char code word1[]={"Welcome to"};
  17          unsigned char code word2[]={"www.kingst.org"};
  18          
  19          
  20          /**
  21           * 等待繁忙标志
  22          */
  23          void wait(void)
  24          {
  25   1              P0 = 0xFF;
  26   1              
  27   1              do
  28   1              {
  29   2                      RS = 0;
  30   2                      RW = 1;
  31   2                      EN = 0;
  32   2                      EN = 1;
  33   2              }while (BUSY == 1);
  34   1              EN = 0;
  35   1      }
  36          
  37          /**
  38           * 写数据
  39          */
  40          void w_dat(uint8 dat)
  41          {
  42   1              wait();
  43   1              EN = 0;
  44   1              P0 = dat;
  45   1              RS = 1;
  46   1              RW = 0;
  47   1              EN = 1;
  48   1              EN = 0;
  49   1      }
  50          
  51          /**
  52           * 写命令
  53          */
  54          void w_cmd(uint8 cmd)
  55          {
C51 COMPILER V7.08   MAIN                                                                  12/26/2010 11:33:30 PAGE 2   

  56   1              wait();
  57   1              EN = 0;
  58   1              P0 = cmd;
  59   1              RS = 0;
  60   1              RW = 0;
  61   1              EN = 1;
  62   1              EN = 0;
  63   1      }
  64          
  65          /**
  66           * 发送字符串到LCD
  67          */
  68          void w_string(uint8 addr_start, uint8 *p)
  69          {
  70   1              w_cmd(addr_start);
  71   1              while (*p != '\0')
  72   1              {
  73   2                      w_dat(*p++);
  74   2              }
  75   1      }
  76          
  77          
  78          /**
  79           * 初始化1602
  80          */
  81          void Init_LCD1602(void)
  82          {
  83   1              w_cmd(0x38);  // 16*2显示,5*7点阵,8位数据接口
  84   1              w_cmd(0x0C);  // 显示器开、光标开、光标允许闪烁
  85   1              w_cmd(0x06);  // 文字不动,光标自动右移
  86   1              w_cmd(0x01);  // 清屏
  87   1      }
  88          
  89          
  90          main()
  91          {
  92   1      
  93   1              Init_LCD1602();
  94   1              
  95   1              w_string(0x80,word1);
  96   1              w_string(0xC0,word2);
  97   1              
  98   1              while (1);
  99   1      } 
 100          


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