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

📄 lcd1602字符显示.lst

📁 单片机写的程序都含有Protues仿真结果
💻 LST
字号:
C51 COMPILER V7.10   LCD1602字符显示                                                       05/15/2008 22:51:52 PAGE 1   


C51 COMPILER V7.10, COMPILATION OF MODULE LCD1602字符显示
OBJECT MODULE PLACED IN lcd1602字符显示.OBJ
COMPILER INVOKED BY: F:\KeilC安装软件\安装\C51\BIN\C51.EXE lcd1602字符显示.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include <reg51.h>
   2          #define uchar unsigned char
   3          #define uint unsigned int
   4          sbit RS=P2^0;
   5          sbit RW=P2^1;
   6          sbit E=P2^2;
   7          
   8          void delay(uint timer);
   9          void init(void);
  10          void wc51r(uchar j);
  11          void wc51ddr(uchar j);
  12          void fbusy(void);
  13          
  14          void main()
  15          {
  16   1      SP=0x50;
  17   1      init();
  18   1      wc51r(0x80);     //第0行 第0列
  19   1      wc51ddr(0x49);   //字符 I
  20   1      wc51r(0x82);     //第0行 第2列 
  21   1      wc51ddr(0x4c);   //字符 L
  22   1      wc51ddr(0x4f);   //字符 O
  23   1      wc51ddr(0x56);   //字符 V                //这里可以看出 地址值(没有设定时)是按列自动加1
  24   1      wc51ddr(0x45);   //字符 E                //当有设置值时 从设置值出开始 显示 数据
  25   1      
  26   1      wc51r(0xC0);     //第1行 第0列
  27   1      wc51ddr(0x4d);   //字符 M
  28   1      wc51ddr(0x43);   //字符 C
  29   1      wc51ddr(0x55);   //字符 U
  30   1      wc51ddr(0x21);   //字符 !
  31   1      while(1);
  32   1      }
  33          
  34          void init()
  35          {
  36   1      wc51r(0x01);  //清屏幕
  37   1      wc51r(0x38);  //显示方式16*2 字符5*7
  38   1      wc51r(0x0c);  //显示开 光标闪烁
  39   1      wc51r(0x06);  //字符不动 光标自动右移一格
  40   1      }
  41          
  42          
  43          void fbusy()
  44          {
  45   1      E=0;             //这里 加上 E=0 液晶才能正常显示 
  46   1      RS=0;
  47   1      RW=1;
  48   1      E=1;
  49   1      while(P1&0x80);
  50   1      E=0;
  51   1      delay(10);
  52   1      }
  53          
  54          void wc51r(uchar j)        //写指令
  55          {
C51 COMPILER V7.10   LCD1602字符显示                                                       05/15/2008 22:51:52 PAGE 2   

  56   1      fbusy();
  57   1      E=0;
  58   1      RS=0;
  59   1      RW=0;
  60   1      E=1;
  61   1      P1=j;
  62   1      E=0;
  63   1      delay(10);
  64   1      }
  65          
  66          void wc51ddr(uchar j) //写数据
  67          {
  68   1      fbusy();
  69   1      E=0;
  70   1      RS=1;
  71   1      RW=0;
  72   1      E=1;
  73   1      P1=j;
  74   1      E=0;
  75   1      delay(1000);
  76   1      }
  77          void delay(uint timer)
  78          {
  79   1      uchar y;
  80   1      for(;timer>0;timer--)
  81   1      for(y=0;y<120;y++)
  82   1      {;}
  83   1      } 


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