📄 debug.lst
字号:
257 1 put_string(0x9a,"(元 公斤)");
258 1 put_string(0x9c,a); ////第4行第5列显示中文字符'/'
259 1 }
260
261 //显示己存信息
262 void info_screen()
263 {
264 1 char idata i;
265 1 write_cmd(0x01); //清除当前显示
266 1 put_string(0x80," ");
267 1 put_string(0x80,"发送以下信息吗?");
268 1 // receive_SMS(); //receive SMS,judge the center_phone change
269 1 for(i=info_page_index*3; (i<info_page_index*3+3)&&(i<info_count);i++)
270 1 put_string(0x88+8*(i-info_page_index*3),info_string(i)) ;
271 1 }
272 //返回第x条信息对应的字符串
273 char *info_string(char x)
274 {
275 1 char idata i ,j=-1 ,info[8], type[9]; //, price[6];
276 1 static char idata total[17];
277 1
278 1 //读取第x条蔬菜信息存到info[]数组
279 1 for(i=0;i<strlen(sms_deliver.PDUData);i++)
280 1 {
281 2 if(sms_deliver.PDUData[i]==',')
282 2 j++;
283 2 if(j==x)
284 2 break;
285 2 }
286 1 i++; //i为第x条信息的第一个字符的索引号
287 1 j=0;
288 1 while(sms_deliver.PDUData[i]!=','&&sms_deliver.PDUData[i]!='\0')
289 1 {
290 2 info[j]=sms_deliver.PDUData[i];
291 2 j++; i++;
292 2 }
293 1 info[j]='\0';
294 1 if(info[0]=='0')
295 1 switch(info[1])
296 1 {
297 2 case'1':strcpy(type,"白萝卜:") ; break;
298 2 case'2':strcpy(type,"菠菜: ") ; break;
299 2 case'3':strcpy(type,"菜花: ") ; break;
300 2 case'4':strcpy(type,"长茄子:") ; break;
301 2 case'5':strcpy(type,"大白菜:") ; break;
302 2 case'6':strcpy(type,"大葱: ") ; break;
303 2 case'7':strcpy(type,"大蒜: ") ; break;
C51 COMPILER V7.02a DEBUG 04/01/2005 10:28:51 PAGE 6
304 2 case'8':strcpy(type,"冬瓜: ") ; break;
305 2 case'9':strcpy(type,"豆角: ") ; break;
306 2 default: break;
307 2 }
308 1 else if(info[0]=='1')
309 1 switch(info[1])
310 1 {
311 2 case'0':strcpy(type,"佛手: ") ; break;
312 2 case'1':strcpy(type,"荷兰豆:") ; break;
313 2 case'2':strcpy(type,"红尖椒:") ; break;
314 2 case'3':strcpy(type,"胡萝卜:") ; break;
315 2 case'4':strcpy(type,"黄豆牙:") ; break;
316 2 case'5':strcpy(type,"黄瓜: ") ; break;
317 2 case'6':strcpy(type,"茴香: ") ; break;
318 2 case'7':strcpy(type,"鸡腿菇:") ; break;
319 2 case'8':strcpy(type,"尖椒: ") ; break;
320 2 case'9':strcpy(type,"茭白: ") ; break;
321 2 default: break;
322 2 }
323 1 else if(info[0]=='2')
324 1 switch(info[1])
325 1 {
326 2 case'0':strcpy(type,"芥菜: ") ; break;
327 2 case'1':strcpy(type,"金针菇:") ; break;
328 2 case'2':strcpy(type,"韭菜: ") ; break;
329 2 case'3':strcpy(type,"空心菜:") ; break;
330 2 case'4':strcpy(type,"苦瓜: ") ; break;
331 2 case'5':strcpy(type,"莲藕菜:") ; break;
332 2 case'6':strcpy(type,"绿豆牙:") ; break;
333 2 case'7':strcpy(type,"绿尖椒:") ; break;
334 2 case'8':strcpy(type,"毛豆: ") ; break;
335 2 case'9':strcpy(type,"木耳: ") ; break;
336 2 default: break;
337 2 }
338 1 else if(info[0]=='3')
339 1 switch(info[1])
340 1 {
341 2 case'0':strcpy(type,"南瓜: "); break;
342 2 case'1':strcpy(type,"平菇: "); break;
343 2 case'2':strcpy(type,"茄子: "); break;
344 2 case'3':strcpy(type,"芹菜: "); break;
345 2 case'4':strcpy(type,"青椒: "); break;
346 2 case'5':strcpy(type,"山药: "); break;
347 2 case'6':strcpy(type,"生菜: "); break;
348 2 case'7':strcpy(type,"生姜: "); break;
349 2 case'8':strcpy(type,"丝瓜: "); break;
350 2 case'9':strcpy(type,"蒜苗: "); break;
351 2 default: break;
352 2 }
353 1 else if(info[0]=='4')
354 1 switch(info[1])
355 1 {
356 2 case'0':strcpy(type,"蒜薹: ") ; break;
357 2 case'1':strcpy(type,"茼蒿: ") ; break;
358 2 case'2':strcpy(type,"土豆: ") ; break;
359 2 case'3':strcpy(type,"莴笋: ") ; break;
360 2 case'4':strcpy(type,"西红柿:") ; break;
361 2 case'5':strcpy(type,"西葫芦:") ; break;
362 2 case'6':strcpy(type,"西兰花:") ; break;
363 2 case'7':strcpy(type,"西洋芹:") ; break;
364 2 case'8':strcpy(type,"香菜: ") ; break;
365 2 case'9':strcpy(type,"香椿: ") ; break;
C51 COMPILER V7.02a DEBUG 04/01/2005 10:28:51 PAGE 7
366 2 default: break;
367 2 }
368 1 else if(info[0]=='5')
369 1 switch(info[1])
370 1 {
371 2 case'0':strcpy(type,"香菇: ") ; break;
372 2 case'1':strcpy(type,"小白菜:") ; break;
373 2 case'2':strcpy(type,"小葱: ") ; break;
374 2 case'3':strcpy(type,"洋白菜:") ; break;
375 2 case'4':strcpy(type,"洋葱头:") ; break;
376 2 case'5':strcpy(type,"油菜: ") ; break;
377 2 case'6':strcpy(type,"油麦菜:") ; break;
378 2 case'7':strcpy(type,"圆茄子:") ; break;
379 2 case'8':strcpy(type,"竹笋: ") ; break;
380 2 default: break;
381 2 }
382 1 strcpy(total,type);
383 1 total[8]=' ';
384 1 //拷贝蔬菜价格到数组total[]中
385 1 for(j=2;j<strlen(info);j++)
386 1 total[7+j]=info[j];
387 1 for(j+=7; j<14; j++ )
388 1 total[j]=' '; //空余的数组字节置空格
389 1 total[14]=0xd4; total[15]=0xaa; //'元'的中文字库码为0xd4aa
390 1 total[16]='\0';
391 1 return(total);
392 1 }
393
394
395
396
397 ///////////////////////////////////////////////////////////////////////////////////////
398 /////////////按键相关函数//////////////////////////////////////////////////////////////
399 ///////////////////////////////////////////////////////////////////////////////////////
400 //数字键的响应函数
401 void key_num(char x)
402 {
403 1 char c=0x30+x; //数字x转换成ASC字符
404 1 if(display_type==0) //蔬菜品种界面
405 1 {
406 2 if(vege_type[0]=='\0'&&vege_type[1]=='\0') //尚未设定蔬菜品种
407 2 vege_type[0]=c; //把x变换成字符保存到蔬菜品种第0位
408 2 else if(vege_type[0]!='\0'&&vege_type[1]=='\0')
409 2 vege_type[1]=c; //保存到第1位
410 2 put_string(0x9d,vege_type); // 在第4行第6列处显示蔬菜种类代号
411 2
412 2 return;
413 2 }
414 1 if(display_type==1)
415 1 {
416 2 if(vege_price[0]=='\0') vege_price[0]=c; //保存蔬菜价格
417 2 else if(vege_price[1]=='\0') vege_price[1]=c;
418 2 else if(vege_price[1]=='.'&&vege_price[2]=='\0') vege_price[2]=c;
419 2 else if( (vege_price[1]=='.'||vege_price[2]=='.')&&vege_price[3]=='\0' ) vege_price[3]=c;
420 2 else if(vege_price[2]=='.'&&vege_price[4]=='\0') vege_price[4]=c;
421 2 vege_price[5]='\0';
422 2 put_string(0x8a,vege_price); //显示输入的价格
423 2
424 2 }
425 1 }
426 // . 键的响应函数
427 void key_dot()
C51 COMPILER V7.02a DEBUG 04/01/2005 10:28:51 PAGE 8
428 {
429 1 if(display_type==1)
430 1 if(vege_price[0]!='\0')
431 1 if(vege_price[1]!='.'&&vege_price[2]!='.')
432 1 {
433 2 if(vege_price[1]=='\0') vege_price[1]='.';
434 2 else if(vege_price[2]=='\0') vege_price[2]='.' ;
435 2 put_string(0x8a,vege_price); //显示价格
436 2 }
437 1 return;
438 1 }
439
440 //取消键的响应函数
441 void key_cancel()
442 {
443 1 uchar idata i ;
444 1 char chu[3]={0xb3,0xfd,'\0'}; //'除'字的中文字库为0xB3FD
445 1 if(display_type==0)
446 1 {
447 2 if(vege_type[1]!='\0')
448 2 vege_type[1]='\0';
449 2 else if(vege_type[0]!='\0')
450 2 vege_type[0]='\0';
451 2 put_string(0x9d," "); //清除当前的代号显示
452 2 put_string(0x9d,vege_type); //显示取消后的vege_type
453 2 }
454 1 else if(display_type==1) //价格界面
455 1 {
456 2 if(vege_price[4]!='\0') vege_price[4]='\0';
457 2 else if(vege_price[3]!='\0') vege_price[3]='\0';
458 2 else if(vege_price[2]!='\0') vege_price[2]='\0';
459 2 else if(vege_price[1]!='\0') vege_price[1]='\0';
460 2 else if(vege_price[0]!='\0') vege_price[0]='\0';
461 2 else if(vege_price[0]=='\0') //如果没有输入价格
462 2 {
463 3 display_type=0;
464 3 write_cmd(0x01); //清除当前界面
465 3 delay_160ms(); //如果没这句经常会乱屏
466 3 type_screen(); //返回到品种界面
467 3 return;
468 3 }
469 2 put_string(0x8a," "); //清除正在显示的价格
470 2 put_string(0x8a,vege_price); //在第3行第4列显示当前蔬菜价格
471 2 }
472 1 else if(display_type==2) //信息界面
473 1 {
474 2 //清除各全局变量
475 2 info_count=0;
476 2 info_page_index=0;
477 2 vege_type[0]=vege_type[1]=vege_type[2]='\0';
478 2 vege_price[0]=vege_price[1]=vege_price[2]=vege_price[3]=vege_price[4];
479 2 vege_price[5]='\0';
480 2 for(i=0;i<140;i++)
481 2 sms_deliver.PDUData[i]='\0';
482 2 display_type=0;
483 2
484 2 write_cmd(0x01);
485 2 put_string(0x90," ");
486 2 put_string(0x90,"所有信息已删 !");
487 2 put_string(0x96,chu);
488 2 delay_1s();
489 2 type_screen();
C51 COMPILER V7.02a DEBUG 04/01/2005 10:28:51 PAGE 9
490 2 }
491 1 }
492
493 //确认键
494 void key_confirm()
495 {
496 1 char idata i;
497 1 if(display_type==0) //蔬菜品种界面
498 1 {
499 2 if( (vege_type[0]<='5'&&vege_type[0]>='0')
500 2 && (vege_type[1]<='9'&&vege_type[1]>='0')
501 2 && !(vege_type[0]=='5'&&vege_type[1]=='9')
502 2 && !(vege_type[0]=='0'&&vege_type[1]=='0') )//合理的类型(没有蔬菜类型59和00)
503 2 {
504 3 display_type=1; //价格界面
505 3 price_screen(); //显示价格界面
506 3 }
507 2 else
508 2 {
509 3 put_string(0x9d,"代号错");
510 3 delay_160ms();
511 3 put_string(0x9d," ");
512 3 vege_type[0]='\0'; //蔬菜品种清除
513 3 vege_type[1]='\0';
514 3 }
515 2 }
516 1 if(display_type==1) //价格界面
517 1 {
518 2 if(vege_price[0]!='\0')
519 2 {
520 3 if(sms_deliver.PDUData[0]=='\0')
521 3 {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -