📄 显示子程序.lst
字号:
145 1 *Lcd_addr = 0xb0;
C51 COMPILER V8.16 显示子程序 11/26/2000 18:33:26 PAGE 4
146 1 for(i=0;i<0x780;i++)
147 1 {
148 2 check_autowrite();
149 2 *Lcd_data = 0x00;
150 2 }
151 1 check_state();
152 1 *Lcd_addr = 0xb2;
153 1 }
154
155 void Lcd_setside()
156 {
157 1 uint j;
158 1 uint address;
159 1 uchar address_h;
160 1 uchar address_l;
161 1 Lcd_addr = 0x89;
162 1 Lcd_data = 0x88;
163 1 set_addr(0x00,0x00);
164 1 check_state();
165 1 *Lcd_addr = 0xb0;
166 1 for(j=0;j<0x1e;j++)
167 1 {
168 2 check_autowrite();
169 2 *Lcd_data = 0xff;
170 2 }
171 1 check_state();
172 1 *Lcd_addr = 0xb2;
173 1 for(j=0;j<0x3e;j++)
174 1 {
175 2 address=0x1e+0x1e*j;
176 2 address_l=address&0xff;
177 2 address=address>>8;
178 2 address_h=address&0xff;
179 2 set_addr(address_l,address_h);
180 2 check_state();
181 2 *Lcd_addr = 0xb0;
182 2 check_autowrite();
183 2 *Lcd_data = 0x80;
184 2 check_state();
185 2 *Lcd_addr = 0xb2;
186 2 }
187 1 for(j=0;j<0x3e;j++)
188 1 {
189 2 address=0x3b+0x1e*j;
190 2 address_l=address&0xff;
191 2 address=address>>8;
192 2 address_h=address&0xff;
193 2 set_addr(address_l,address_h);
194 2 check_state();
195 2 *Lcd_addr = 0xb0;
196 2 check_autowrite();
197 2 *Lcd_data = 0x01;
198 2 check_state();
199 2 *Lcd_addr = 0xb2;
200 2 }
201 1 set_addr(0x62,0x07);
202 1 check_state();
203 1 *Lcd_addr = 0xb0;
204 1 for(j=0;j<0x1e;j++)
205 1 {
206 2 check_autowrite();
207 2 *Lcd_data = 0xff;
C51 COMPILER V8.16 显示子程序 11/26/2000 18:33:26 PAGE 5
208 2 }
209 1 check_state();
210 1 *Lcd_addr = 0xb2;
211 1 }
212
213 Lcd_writenumber(uchar lin,uchar col,uchar num)
214 {
215 1 uchar j;
216 1 uchar *address;
217 1 uchar show_h;
218 1 uchar show_l;
219 1 uint firstaddr;
220 1 address=&Numcode[num][0];
221 1 for(j=0;j<0x10;j++)
222 1 {
223 2 firstaddr=(lin-1+j)*0x1e+col;
224 2 show_l=firstaddr&0xff;
225 2 firstaddr=firstaddr>>8;
226 2 show_h=firstaddr&0xff;
227 2 set_addr(show_l,show_h);
228 2 address=&Numcode[num][0];
229 2 check_state();
230 2 *Lcd_addr = 0xb0;
231 2 check_autowrite();
232 2 *Lcd_data = *(address+j);
233 2 check_state();
234 2 *Lcd_addr = 0xb2;
235 2 }
236 1
237 1 }
238
239 Lcd_writechina(uchar lin,uchar col,uchar num)
240 {
241 1 uchar j;
242 1 uchar *address;
243 1 uchar show_h;
244 1 uchar show_l;
245 1 uint firstaddr;
246 1 address=&HZcode[num][0];
247 1 for(j=0;j<0x10;j++)
248 1 {
249 2 firstaddr=(lin-1+j)*0x1e+col;
250 2 show_l=firstaddr&0xff;
251 2 firstaddr=firstaddr>>8;
252 2 show_h=firstaddr&0xff;
253 2 set_addr(show_l,show_h);
254 2 address=&HZcode[num][0];
255 2 check_state();
256 2 *Lcd_addr = 0xb0;
257 2 check_autowrite();
258 2 *Lcd_data = *(address+2*j);
259 2 *Lcd_data = *(address+2*j+1);
260 2 check_state();
261 2 *Lcd_addr = 0xb2;
262 2 }
263 1
264 1 }
265
266 Lcd_writenum1ber(uchar lin,uchar col,uchar num)
267 {
268 1 uchar j;
269 1 uchar *address;
C51 COMPILER V8.16 显示子程序 11/26/2000 18:33:26 PAGE 6
270 1 uchar show_h;
271 1 uchar show_l;
272 1 uint firstaddr;
273 1 address=&Num1code[num][0];
274 1 for(j=0;j<0x10;j++)
275 1 {
276 2 firstaddr=(lin-1+j)*0x1e+col;
277 2 show_l=firstaddr&0xff;
278 2 firstaddr=firstaddr>>8;
279 2 show_h=firstaddr&0xff;
280 2 set_addr(show_l,show_h);
281 2 address=&Num1code[num][0];
282 2 check_state();
283 2 *Lcd_addr = 0xb0;
284 2 check_autowrite();
285 2 *Lcd_data = *(address+j);
286 2 check_state();
287 2 *Lcd_addr = 0xb2;
288 2 }
289 1 }
290
291 delay()
292 {
293 1 uchar i,j;
294 1 for(i = 0;i < 50;i ++)
295 1 {
296 2 for(j =0 ;j < 50;j ++);
297 2 }
298 1 }
299
300 void dealkey1()
301 {
302 1 if(K1 == 0)
303 1 {
304 2 delay();
305 2 if(K1 == 0)
306 2 {
307 3 while(K1 == 0);
308 3 keynumber++;
309 3 if(keynumber == 7)
310 3 {
311 4 keynumber = 0;
312 4 }
313 3 }
314 2 }
315 1 }
316
317 void choicedata()
318 {
319 1 switch(keynumber)
320 1 {
321 2 case(1): {
322 3 Lcd_writenum1ber(0x1c,0x08,secondh);
323 3 Lcd_writenum1ber(0x1c,0x09,secondl);
324 3 if(K2 == 0)
325 3 {
326 4 delay();
327 4 if(K2 == 0)
328 4 {
329 5 while(K2 == 0);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -