📄 text1.lst
字号:
C51 COMPILER V8.02 TEXT1 02/07/2007 16:22:34 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE TEXT1
OBJECT MODULE PLACED IN Text1.OBJ
COMPILER INVOKED BY: c:\Keil\C51\BIN\C51.EXE Text1.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include "main.h"
2 #include <reg52.h>
3
4 #define LCD_Data P0
5 sbit LCD_RS =P1^2;
6 sbit LCD_E =P1^0;
7 sbit LCD_WR =P1^1;
8
9 void WriteLCD(unsigned char StartAddressY,unsigned char StartAddressX,unsigned char *tab,unsigned char bia
-ozhi);
10
11
12 extern unsigned char code picture[]={
13 0x00,0x8C,0x10,0x10,0x20,0x20,0x19,0x04,0x12,0x02,0xC0,0x02,0x11,0x00,0x00,0x00,
14 0x00,0x40,0x18,0x20,0x5C,0x62,0x22,0x5C,0x40,0x24,0x10,0x90,0x21,0x02,0x04,0x04,
15 0x00,0x00,0x00,0x00,0x02,0x10,0x00,0x00,0x00,0x00,0x40,0x18,0x20,0x5C,0x62,0x22,
16 0x5C,0x40,0x24,0x10,0x90,0x21,0x02,0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
17 0x08,0xD4,0x32,0x12,0x8A,0x89,0x09,0x05,0x06,0x04,0x04,0x04,0x04,0x04,0x04,0x04,
18 0x08,0x08,0x08,0x10,0xF0,0x18,0x08,0x08,0x10,0x20,0x20,0xC0,0x00,0x00,0x00,0x00,
19 0x00,0x00,0x00,0x00,0x00,0x30,0x40,0xB8,0xC4,0x44,0xB9,0x80,0x48,0x20,0x20,0x4B,
20 0x0C,0xF8,0x09,0x08,0x08,0x88,0x78,0x00,0x00,0x00,0x20,0x28,0xA8,0xA8,0xA8,0xF8,
21 0xA8,0xA8,0xA8,0x28,0x20,0x00,0x00,0x08,0x08,0x08,0x08,0xC8,0x48,0x28,0x18,0x08,
22 0x00,0x00,0x00,0xE0,0xF0,0xF0,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
23 0x00,0x00,0x00,0xC0,0x3C,0x83,0x80,0x80,0x99,0x00,0x00,0x00,0x00,0x00,0xE0,0x00,
24 0x00,0x02,0x0C,0x00,0x00,0x00,0x00,0x00,0x80,0x03,0x00,0x00,0x02,0x02,0x0E,0xF1,
25 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x80,0x00,0x00,0x00,0x00,
26 0x20,0x00,0x00,0xA1,0xA0,0x90,0x90,0x8B,0x84,0x8A,0x91,0x90,0xA0,0xA0,0x00,0xA0,
27 0x28,0x2F,0x2A,0x2A,0x3F,0x2A,0xAA,0x2F,0xA8,0x20,0x00,0x00,0x80,0x80,0xA0,0x20,
28 0xBF,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x80,0x9B,0x9B,0x80,0x80,0x80,0x80,0x80,
29 0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x40,0x87,0x08,0x16,0x10,0x2C,0x21,0x21,
30 0x22,0x9C,0x80,0x80,0x80,0x80,0x00,0x01,0x08,0x08,0x08,0x08,0x00,0x07,0x04,0x06,
31 0x00,0x80,0x60,0x1E,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
32 0x20,0x85,0x41,0x41,0x02,0x00,0x20,0x00,0x20,0x2E,0xAA,0xEA,0xBF,0x2A,0xAF,0x6A,
33 0x2A,0x2E,0x20,0x00,0xE0,0x1B,0x80,0x7E,0xEA,0xAA,0xEA,0x3F,0xC2,0x23,0x9A,0x00,
34 0x00,0xFF,0x24,0xFF,0x00,0xFF,0x08,0x0F,0x08,0x08,0x8F,0x00,0x00,0x00,0x00,0x00,
35 0x00,0xFC,0x04,0x02,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x20,0x10,0x88,0x45,
36 0x27,0x12,0x02,0x20,0x05,0x05,0x05,0x03,0x03,0x03,0x03,0x43,0x00,0x00,0x00,0x08,
37 0x08,0x08,0x08,0x0C,0x0A,0x09,0x10,0x60,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
38 0x00,0x00,0x00,0x00,0x24,0x03,0x00,0x02,0x00,0x78,0x80,0x00,0x20,0x02,0x82,0x42,
39 0x42,0x42,0x81,0x01,0x01,0x02,0x02,0x00,0x40,0x01,0x02,0x01,0x00,0x01,0xC0,0x22,
40 0x21,0x20,0x41,0x83,0x00,0x03,0x00,0x02,0x23,0x00,0x03,0x02,0x02,0x02,0x02,0xC3,
41 0x20,0x20,0x20,0x40,0x82,0x02,0x03,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x38,0x47,
42 0xF0,0x04,0x03,0x02,0x02,0x04,0x05,0x05,0x06,0x02,0x0A,0x0A,0x0A,0x0A,0x04,0x04,
43 0x14,0x14,0x14,0x14,0x1B,0x20,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xFE,0x00,
44 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x17,0x10,0x09,0x04,0x24,0x08,0x00,
45 0x11,0x01,0x00,0x03,0x04,0x04,0x02,0x00,0x01,0x0A,0x02,0x02,0x04,0x00,0x00,0x00,
46 0x08,0x00,0x00,0x01,0x02,0x02,0x01,0x00,0x20,0x05,0x01,0x01,0x02,0x00,0x20,0x00,
47 0x00,0x08,0x00,0x00,0x01,0x02,0x02,0x01,0x00,0x20,0x05,0x01,0x01,0x02,0x00,0x20,
48 0x00,0x00,0x00,0x00,0x1F,0x38,0x30,0x28,0x30,0x20,0x10,0x00,0x20,0x0C,0x10,0x30,
49 0x20,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x01,0x02,0x04,0x18,
50 0x24,0x14,0x24,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
51 };
52
53
54 unsigned char LCDBusyWait() //等待LCD就绪
C51 COMPILER V8.02 TEXT1 02/07/2007 16:22:34 PAGE 2
55 {
56 1 unsigned char Status;
57 1 LCD_RS=0;
58 1 LCD_WR=1;
59 1 LCD_Data=0xFF;
60 1 LCD_E=1;
61 1 Status=LCD_Data;
62 1 LCD_E=0;
63 1 while(Status & 0x80)
64 1 {
65 2
66 2 LCD_E=1;
67 2 Status=LCD_Data;
68 2 LCD_E=0;
69 2 }
70 1 LCD_WR=0;
71 1 return Status;
72 1 }
73
74 void WriteLCD_Data(unsigned char Data) //向LCD写入一个字节的数据
75 {
76 1 LCDBusyWait();
77 1 LCD_RS=1;
78 1 LCD_Data=Data;
79 1 LCD_E=1;
80 1 LCD_E=0;
81 1 }
82
83 void WriteLCD_Command(unsigned char Command) //向LCD写入一个字节的命令
84 {
85 1 LCDBusyWait();
86 1 LCD_RS=0;
87 1 LCD_Data=Command;
88 1 LCD_E=1;
89 1 LCD_E=0;
90 1 }
91
92
93 void WriteLCD(unsigned char StartAddressY,unsigned char StartAddressX,unsigned char *tab,unsigned char bia
-ozhi)
94
95 { unsigned char a;
96 1 unsigned char b;
97 1
98 1
99 1 for(a=0;a<32;a++)
100 1 {
101 2 if( biaozhi==0)
102 2 {
103 3 WriteLCD_Command(StartAddressY);
104 3 StartAddressY+=1;
105 3 WriteLCD_Command(StartAddressX);
106 3 for(b=0;b<16;b++)
107 3 {
108 4 WriteLCD_Data(*(tab++));
109 4 }
110 3 }
111 2 else
112 2 {
113 3 WriteLCD_Command(StartAddressY);
114 3 StartAddressY+=1;
115 3 WriteLCD_Command(StartAddressX);
C51 COMPILER V8.02 TEXT1 02/07/2007 16:22:34 PAGE 3
116 3 for(b=0;b<16;b++)
117 3 {
118 4 WriteLCD_Data(*(tab++));
119 4 }
120 3
121 3
122 3 }
123 2
124 2
125 2
126 2 }
127 1 }
128
129 void DISPInitial()
130 {
131 1 unsigned int i;
132 1 unsigned char j;
133 1 WriteLCD_Command(0x30); //功能设置---8BIT控制界面,基本指令集
134 1 WriteLCD_Command(0x0C); //显示打开,光标关,反白显示关
135 1 WriteLCD_Command(0x01); //清除屏幕显示,将DDRAM的地址计数器归零
136 1
137 1
138 1
139 1 WriteLCD_Command(0x32); //功能设置 绘图显示ON
140 1 for(i=0;i<10;i++)
141 1 for(j=0;j<4;j++); //延时两秒
142 1 WriteLCD_Command(0x36); //功能设置 绘图显示ON
143 1 for(i=0;i<10;i++)
144 1 for(j=0;j<4;j++); //延时两秒
145 1 }
146
147 void DisplayLCD()
148 {
149 1
150 1
151 1 WriteLCD_Command(0x0C); //关闭游标的闪烁
152 1
153 1 WriteLCD(0x80,0x80,picture,0);
154 1 WriteLCD(0x80,0x88,picture,1);
155 1 }
156
157
158 void main(void)
159 {
160 1 void WriteLCD(unsigned char StartAddressY,unsigned char StartAddressX,unsigned char *tab,unsigned char bi
-aozhi);
161 1 DISPInitial();
162 1
163 1
164 1 while(1)
165 1 {
166 2
167 2 DisplayLCD();
168 2 }
169 1
170 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 249 ----
CONSTANT SIZE = 606 ----
XDATA SIZE = ---- ----
C51 COMPILER V8.02 TEXT1 02/07/2007 16:22:34 PAGE 4
PDATA SIZE = ---- ----
DATA SIZE = ---- 6
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 + -