📄 main.lst
字号:
218 ************************************************************************************/
219 void Draw_line(void)
220 { unsigned char x;
221 1 unsigned char y;
222 1 dis_clr();
223 1 x=0;
224 1 y=0;
225 1 while(1)
226 1 {
227 2 Delay_ms(200);
228 2 dis_clr();
229 2 LCD_Draw_line(0,0,x,y,1);
230 2 y+=3;
231 2 if(y<63)
232 2 {
233 3 x=127;
234 3 }
235 2 if(y>63)
236 2 {
237 3 y=63;
238 3 x-=6;
239 3 if(x<=5)
240 3 {
241 4 y=0;
C51 COMPILER V7.02b MAIN 04/27/2007 09:49:02 PAGE 5
242 4 x=127;
243 4 dis_clr();
244 4 }
245 3 }
246 2 key=GetKey();
247 2 if((key!=0xff)&&(key!=0x0b))
248 2 return;
249 2 }
250 1
251 1 }
252 /***********************************************************************************
253 * 函数名称:Draw_Rectangle;
254 *
255 * 函数功能描述:画矩形;
256 *
257 * 输入参数:none;
258 *
259 * 返回数据:none;
260 *
261 * 注意: none;
262 ************************************************************************************/
263 void Draw_Rectangle(void)
264 {
265 1 unsigned char x;
266 1 unsigned char y;
267 1 dis_clr();
268 1 x=0;
269 1 y=0;
270 1 while(1)
271 1 {
272 2 Delay_ms(200);
273 2 LCD_Draw_Rectangle(63-x,31-y,63+x,31+y,1);
274 2 x+=4;
275 2 y+=2;
276 2 if(x>64)
277 2 {
278 3 x=0;
279 3 dis_clr();
280 3 }
281 2 if(y>32)
282 2 {
283 3 dis_clr();
284 3 y=0;
285 3 }
286 2 key=GetKey();
287 2 if((key!=0xff)&&(key!=0x0c))
288 2 return;
289 2 }
290 1
291 1 }
292 /***********************************************************************************
293 * 函数名称:Draw_FillRectangle;
294 *
295 * 函数功能描述:画实心矩形;
296 *
297 * 输入参数:none;
298 *
299 * 返回数据:none;
300 *
301 * 注意: none;
302 ************************************************************************************/
303 void Draw_FillRectangle(void)
C51 COMPILER V7.02b MAIN 04/27/2007 09:49:02 PAGE 6
304 { unsigned char x;
305 1 unsigned char y;
306 1 dis_clr();
307 1 x=0;
308 1 y=0;
309 1 while(1)
310 1 {
311 2 Delay_ms(200);
312 2 dis_clr();
313 2 LCD_Draw_FillRectangle(63-x,31-y,63+x,31+y,1);
314 2 x+=4;
315 2 y+=2;
316 2 if(x>64)
317 2 {
318 3 x=0;
319 3 dis_clr();
320 3 }
321 2 if(y>32)
322 2 {
323 3 dis_clr();
324 3 y=0;
325 3 }
326 2 key=GetKey();
327 2 if((key!=0xff)&&(key!=0x0d))
328 2 return;
329 2 }
330 1
331 1 }
332 /***********************************************************************************
333 * 函数名称:Draw_circle;
334 *
335 * 函数功能描述:画同心圆;
336 *
337 * 输入参数:none;
338 *
339 * 返回数据:none;
340 *
341 * 注意: none;
342 ************************************************************************************/
343 void Draw_circle(void)
344 {
345 1 unsigned char x;
346 1 dis_clr();
347 1 x=0;
348 1 while(1)
349 1 {
350 2 Delay_ms(200);
351 2 LCD_Draw_circle(63,31,x,1);
352 2 x+=3;
353 2 if(x>32)
354 2 {
355 3 x=0;
356 3 dis_clr();
357 3 }
358 2 key=GetKey();
359 2 if((key!=0xff)&&(key!=0x0e))
360 2 return;
361 2 }
362 1
363 1 }
364
365
C51 COMPILER V7.02b MAIN 04/27/2007 09:49:02 PAGE 7
366 /************************************************************************************
367 // 主循环程序
368 *************************************************************************************/
369
370 void main(void)
371 {
372 1 //禁止看门狗定时器
373 1 WDTCN = 0xde;
374 1 WDTCN = 0xad;
375 1 //初始化
376 1 SYSCLK_Init ();
377 1 PORT_Init ();
378 1
379 1 Key_Init();
380 1 lcd_init();
381 1
382 1 dis_full();
383 1 Delay_ms(500);
384 1 dis_clr();
385 1 Delay_ms(500);
386 1 dis_start0();
387 1
388 1 while(1)
389 1 {
390 2 key=GetKey(); //调用键盘扫描函数,返回的键值送变量key
391 2 if(key!=0xFF)
392 2 {
393 3 Alarm(1); //响铃
394 3 Delay_ms(250);
395 3 Alarm(0); //关闭铃声
396 3 switch (key)
397 3 {
398 4 case 0x0a:
399 4 Draw_dot();
400 4 break;
401 4 case 0x0b:
402 4 Draw_line();
403 4 break;
404 4 case 0x0c:
405 4 Draw_Rectangle();
406 4 break;
407 4 case 0x0d:
408 4 Draw_FillRectangle();
409 4 break;
410 4 case 0x0e:
411 4 Draw_circle();
412 4 break;
413 4 case 0x0f:
414 4 dis_clr();
415 4 dis_start0();
416 4 break;
417 4 default: break;
418 4 }
419 3 }
420 2 Delay_ms(20);
421 2 }
422 1 }
423
424 /***********************************************************************************/
425 // 文件结束
426 /***********************************************************************************/
C51 COMPILER V7.02b MAIN 04/27/2007 09:49:02 PAGE 8
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 814 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = 1 9
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 + -