📄 lcd.lst
字号:
C51 COMPILER V8.02 LCD 04/09/2007 13:38:51 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE LCD
OBJECT MODULE PLACED IN lcd.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE lcd.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <reg52.h>
2
3 unsigned char Status , Data ,Command , i ;
4 unsigned char code max197 [] = "MAX197AD转换 " ;
5 unsigned char code shuru [] = "输入电压: V";
6 #define LCD_Data P0
7
8
9 sbit LCD_RS =P1^2;
10 sbit LCD_E =P1^0;
11 sbit LCD_WR =P1^1;
12
13
14
15 LCDBusyWait() //等待LCD就绪
16 {
17 1 unsigned char Status;
18 1 LCD_RS=0;
19 1 LCD_WR=1;
20 1 LCD_Data=0xFF;
21 1 LCD_E=1;
22 1 Status=LCD_Data;
23 1 LCD_E=0;
24 1 while(Status & 0x80)
25 1 {
26 2 LCD_E=1;
27 2 Status=LCD_Data;
28 2 LCD_E=0;
29 2 }
30 1 LCD_WR=0;
31 1 return Status;
32 1 }
33
34 WriteLCD_Data( unsigned char Data ) //向LCD写入一个字节的数据
35 {
36 1 LCDBusyWait();
37 1 LCD_RS=1;
38 1 LCD_Data = Data;
39 1 LCD_E=1;
40 1 LCD_E=0;
41 1 }
42
43 WriteLCD_Command( unsigned char Command ) //向LCD写入一个字节的命令
44 {
45 1 LCDBusyWait();
46 1 LCD_RS=0;
47 1 LCD_Data=Command;
48 1 LCD_E=1;
49 1 LCD_E=0;
50 1 }
51
52 lcd_init ()
53 {
54 1
55 1 unsigned int i;
C51 COMPILER V8.02 LCD 04/09/2007 13:38:51 PAGE 2
56 1 WriteLCD_Command(0x01); //清屏
57 1 for(i=0;i<2000;i++);
58 1 WriteLCD_Command(0x30); //功能设置8位界面,
59 1 for(i=0;i<2000;i++);
60 1 WriteLCD_Command(0x0C); //显示开,光、光标关,反白显示
61 1 for(i=0;i<2000;i++);
62 1 WriteLCD_Command(0x06); //DDRAM地址自加
63 1 for(i=0;i<2000;i++);
64 1 }
65
66
67 lcd_display ( unsigned char display_data[] )
68
69 { i = 0;
70 1 while ( display_data[i] != '\0')
71 1 {
72 2 Data = display_data [i] ;
73 2 WriteLCD_Data(Data) ;
74 2 i++ ;
75 2 }
76 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 168 ----
CONSTANT SIZE = 31 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 4 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 + -