📄 lcd.lst
字号:
C51 COMPILER V7.50 LCD 10/18/2005 14:13:31 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE LCD
OBJECT MODULE PLACED IN Lcd.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Lcd.c DEBUG OBJECTEXTEND
line level source
1 /****************************************************************/
2 /* */
3 /* FILE: Lcd.c */
4 /* */
5 /* AUTHOR: machaoqun */
6 /* */
7 /* DATE CREATED: 2005.6.16 */
8 /* */
9 /* DESCRIPTION: LCD MODULE */
10 /* */
11 /* */
12 /****************************************************************/
13 #include <reg51.h>
14 #include <intrins.h>
15 #include "Lcd.h"
16 #include "globedef.h"
17 #include "delay.h"
18
19 unsigned char lcd_18temp;
20 unsigned char lcd_28temp;
21 unsigned char lcd_38temp;
22 unsigned char lcd_48temp;
23 unsigned char lcd_58temp;
24 unsigned char lcd_68temp;
25
26 unsigned char lcd_maintemp;
27 unsigned char lcd_aux1temp;
28 unsigned char lcd_aux2temp;
29 unsigned char lcd_mutetemp;
30
31 unsigned char lcd_9bartemp;
32 unsigned char lcd_10bartemp;
33
34 code unsigned char lcd_table1_18[10][2] =
35 {
36
37 /*第一位数码管,地址0,1*/
38
39 /* 0 */
40 {0x0f,0x0a},
41 /* 1 */
42 {0x00,0x0a},
43 /* 2 */
44 {0x0b,0x0c},
45 /* 3 */
46 {0x09,0x0e},
47 /* 4 */
48 {0x04,0x0e},
49 /* 5 */
50 {0x0d,0x06},
51 /* 6 */
52 {0x0f,0x06},
53 /* 7 */
54 {0x08,0x0a},
55 /* 8 */
C51 COMPILER V7.50 LCD 10/18/2005 14:13:31 PAGE 2
56 {0x0f,0x0e},
57 /* 9 */
58 {0x0d,0x0e}
59 };
60
61 code unsigned char lcd_table1_main[] =
62 {
63 /* MAIN ,地址1*/
64 0x01,
65 };
66
67
68
69 code unsigned char lcd_table1_28[10][2] =
70 {
71 /*第二位数码管,地址2,3*/
72 /* 0 */
73 {0x0f,0x0a},
74 /* 1 */
75 {0x00,0x0a},
76 /* 2 */
77 {0x0b,0x0c},
78 /* 3 */
79 {0x09,0x0e},
80 /* 4 */
81 {0x04,0x0e},
82 /* 5 */
83 {0x0d,0x06},
84 /* 6 */
85 {0x0f,0x06},
86 /* 7 */
87 {0x08,0x0a},
88 /* 8 */
89 {0x0f,0x0e},
90 /* 9 */
91 {0x0d,0x0e}
92 };
93
94 code unsigned char lcd_table1_aux1[10][2] =
95 {
96 /* AUX1 地址3*/
97 0x01,
98 };
99
100 code unsigned char lcd_table1_mohao[] =
101 {
102 /* : 地址4*/
103 0x06,
104 };
105
106 code unsigned char lcd_table1_38[10][2] =
107 {
108 /* 第三位数码管地址5,6 */
109
110 /* 0 */
111 {0x0f,0x0a},
112 /* 1 */
113 {0x00,0x0a},
114 /* 2 */
115 {0x0b,0x0c},
116 /* 3 */
117 {0x09,0x0e},
C51 COMPILER V7.50 LCD 10/18/2005 14:13:31 PAGE 3
118 /* 4 */
119 {0x04,0x0e},
120 /* 5 */
121 {0x0d,0x06},
122 /* 6 */
123 {0x0f,0x06},
124 /* 7 */
125 {0x08,0x0a},
126 /* 8 */
127 {0x0f,0x0e},
128 /* 9 */
129 {0x0d,0x0e}
130 };
131
132 code unsigned char lcd_table1_aux2[] =
133 {
134 /* AUX2 地址6*/
135 0x01,
136 };
137
138 code unsigned char lcd_table1_48[10][2] =
139 {
140 /* 第四位数码管地址7,8 */
141
142 /* 0 */
143 {0x0f,0x0a},
144 /* 1 */
145 {0x00,0x0a},
146 /* 2 */
147 {0x0b,0x0c},
148 /* 3 */
149 {0x09,0x0e},
150 /* 4 */
151 {0x04,0x0e},
152 /* 5 */
153 {0x0d,0x06},
154 /* 6 */
155 {0x0f,0x06},
156 /* 7 */
157 {0x08,0x0a},
158 /* 8 */
159 {0x0f,0x0e},
160 /* 9 */
161 {0x0d,0x0e}
162 };
163
164 code unsigned char lcd_table1_mute[] =
165 {
166 /* MUTE 地址8 */
167 0x01,
168 };
169
170 code unsigned char lcd_table1_bar[] =
171 {
172 /* | 地址0x0a */
173 0x01,
174 /* || 地址0x09,0x0a */
175 0x01,
176 0x01,
177 /* ||| 地址0x09,0x0a */
178 0x01,
179 0x03,
C51 COMPILER V7.50 LCD 10/18/2005 14:13:31 PAGE 4
180 /* |||| 地址0x09,0x0a */
181 0x03,
182 0x03,
183 /* ||||| 地址0x09,0x0a */
184 0x03,
185 0x07,
186 /* |||||| 地址0x09,0x0a */
187 0x07,
188 0x07,
189 /* ||||||| 地址0x09,0x0a */
190 0x07,
191 0x0f,
192 /* |||||||| 地址0x09,0x0a */
193 0x0f,
194 0x0f,
195 /* ||||||||| 地址0x09,0x0a,0x0c */
196 0x0f,
197 0x0f,
198 0x08,
199 /* |||||||||| 地址0x09,0x0a,0x0c,0x0e */
200 0x0f,
201 0x0f,
202 0x08,
203 0x08,
204 };
205
206 code unsigned char lcd_table1_58[10][2] =
207 {
208 /* 第五位数码管地址0x0b,0x0c */
209
210 /* 0 */
211 {0x0d,0x07},
212 /* 1 */
213 {0x00,0x06},
214 /* 2 */
215 {0x0b,0x05},
216 /* 3 */
217 {0x0a,0x07},
218 /* 4 */
219 {0x06,0x06},
220 /* 5 */
221 {0x0e,0x03},
222 /* 6 */
223 {0x0f,0x03},
224 /* 7 */
225 {0x08,0x06},
226 /* 8 */
227 {0x0f,0x07},
228 /* 9 */
229 {0x0e,0x07}
230
231 };
232
233 code unsigned char lcd_table1_68[10][2] =
234 {
235 /* 第六位数码管地址0x0d,0x0e */
236
237 /* 0 */
238 {0x0d,0x07},
239 /* 1 */
240 {0x00,0x06},
241 /* 2 */
C51 COMPILER V7.50 LCD 10/18/2005 14:13:31 PAGE 5
242 {0x0b,0x05},
243 /* 3 */
244 {0x0a,0x07},
245 /* 4 */
246 {0x06,0x06},
247 /* 5 */
248 {0x0e,0x03},
249 /* 6 */
250 {0x0f,0x03},
251 /* 7 */
252 {0x08,0x06},
253 /* 8 */
254 {0x0f,0x07},
255 /* 9 */
256 {0x0e,0x07}
257
258 };
259
260 /**************************************/
261 /* */
262 /* Lcd写数据函数,写地址时调用 */
263 /* */
264 /**************************************/
265 void lcd_wr_addr(unsigned char i)
266 {
267 1 lcd_cs = 1;//切换到数据方式
268 1 lcd_cs = 0;
269 1
270 1 /* 写命令码ID:101 */
271 1
272 1 lcd_wr = 0;
273 1 _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
274 1 lcd_data = 1; // 1
275 1 lcd_wr = 1;
276 1 _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
277 1 lcd_wr = 0;
278 1 _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
279 1 lcd_data = 0; // 0
280 1 lcd_wr = 1;
281 1 _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
282 1 lcd_wr =0;
283 1 _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
284 1 lcd_data = 1; // 1
285 1 lcd_wr = 1;
286 1 _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
287 1
288 1 /* 写地址 */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -