📄 lcd1602.lst
字号:
C51 COMPILER V8.02 LCD1602 10/25/2008 22:29:03 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE LCD1602
OBJECT MODULE PLACED IN LCD1602.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE LCD1602.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <reg52.h>
2 #include "lcd1602.h"
3
4 uchar code *time="time 19:20:30";
5
6 delayms(uint i)
7 {
8 1 while(i--);
9 1 }
10
11 //写指令
12 void WriteCommand(uchar Command)
13 {
14 1 E=0;
15 1 RS=0;
16 1 delayms(600);
17 1 RW=0;
18 1 delayms(600);
19 1 LCDData=Command;
20 1 delayms(600);
21 1 E=1;
22 1 E=0;
23 1 }
24 //写数据
25 void WriteData(uchar Data)
26 {
27 1 delayms(900);
28 1 E=0;
29 1 RS=1;
30 1 RW=0;
31 1 LCDData=Data;
32 1 E=1;
33 1 E=0;
34 1 }
35 //在指定的位置写字符串
36 void WriteString(uchar Address,uchar *string)
37 {
38 1 WriteCommand(Address);
39 1 while(!(*string=='\0'))
40 1 {
41 2 WriteData(*string);
42 2 string++;
43 2 }
44 1 }
45
46 //初始化1602液晶
47 void InitLCD1602()
48 {
49 1 WriteCommand(0x38);
50 1 delayms(200);
51 1 WriteCommand(0x0f);
52 1 delayms(200);
53 1 WriteCommand(0x06);
54 1 delayms(200);
55 1 WriteCommand(0x01);
C51 COMPILER V8.02 LCD1602 10/25/2008 22:29:03 PAGE 2
56 1 }
57
58
59 void main()
60 {
61 1 InitLCD1602();
62 1 WriteCommand(0x80);
63 1 delayms(900);
64 1 WriteData(0x31);
65 1 WriteData(0x32);
66 1 WriteData(0x34);
67 1 WriteString(0x80,time);
68 1 WriteCommand(0x8d);
69 1 WriteData(0x38);
70 1 while(1);
71 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 177 ----
CONSTANT SIZE = 14 ----
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 + -