⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gps_collect.lst

📁 通过车载终端采集GPS数据
💻 LST
📖 第 1 页 / 共 2 页
字号:

 240   1              Byte *pp;
 241   1              up[4]=down[4]='\r';
 242   1              up[5]=down[5]='\n';
 243   1              menu_up_gps_record();
 244   1              nf_read_tobuf(0x00000000,sysinfo,8*sizeof(GPS_LINE_INFO));
 245   1              memcpy(&gps_8line[0],sysinfo,8*sizeof(GPS_LINE_INFO));
 246   1              page=0;
 247   1              tem= gps_8line[tmp_line].gps_counter_up;
 248   1              menu_display_char(11,0,tem/1000+'0',0);
 249   1              menu_display_char(12,0,tem/100%10+'0',0);
 250   1              menu_display_char(13,0,tem/10%10+'0',0);
 251   1              menu_display_char(14,0,tem%10+'0',0);
 252   1              if(tem)
 253   1                      siob_send(up, 6);
 254   1              while(tem)
 255   1              {
 256   2                      pos= page*256+tmp_line*0x00100000+0x00200000;
 257   2                      nf_read_tobuf(pos,gps_data_buf,240);
 258   2                      i=0;
 259   2                      while(i<3)
 260   2                      {
 261   3                              menu_display_char(6,0,tem/1000+'0',0);
 262   3                              menu_display_char(7,0,tem/100%10+'0',0);
 263   3                              menu_display_char(8,0,tem/10%10+'0',0);
 264   3                              menu_display_char(9,0,tem%10+'0',0);
 265   3                              if(get_key()==KEY_CODE_ESC) return;
 266   3                              if(tem)
 267   3                      {
 268   4                              pp=gps_data_buf+i*80;
 269   4                              siob_send(pp, strlen(pp));
 270   4                              }
 271   3                              else break;
 272   3                              tem--;
 273   3                              i++;
 274   3                      }
 275   2      
 276   2                      page++;
 277   2      
 278   2              }
 279   1              page=0;
 280   1              tem= gps_8line[tmp_line].gps_counter_down;
 281   1              menu_display_char(11,1,tem/1000+'0',0);
 282   1              menu_display_char(12,1,tem/100%10+'0',0);
 283   1              menu_display_char(13,1,tem/10%10+'0',0);
 284   1              menu_display_char(14,1,tem%10+'0',0);
 285   1              if(tem)
 286   1                      siob_send(down, 6);
 287   1              while(tem)
 288   1              {
 289   2                      pos= page*256+tmp_line*0x00100000+0x00280000;
 290   2                      nf_read_tobuf(pos,gps_data_buf,240);
 291   2                      i=0;
 292   2                      while(i<3)
 293   2                      {
 294   3                              menu_display_char(6,1,tem/1000+'0',0);
 295   3                              menu_display_char(7,1,tem/100%10+'0',0);
 296   3                              menu_display_char(8,1,tem/10%10+'0',0);
 297   3                              menu_display_char(9,1,tem%10+'0',0);
 298   3                              if(get_key()==KEY_CODE_ESC) return;
 299   3                              if(tem)
 300   3                      {
 301   4                              pp=gps_data_buf+i*80;
C51 COMPILER V8.02   GPS_COLLECT                                                           09/25/2008 19:29:41 PAGE 6   

 302   4                              siob_send(pp, strlen(pp));
 303   4                              }
 304   3                              else break;
 305   3                              tem--;
 306   3                              i++;
 307   3                      }
 308   2      
 309   2                      page++;
 310   2      
 311   2              }
 312   1              menu_process_over();
 313   1              while(get_key()!=KEY_CODE_ESC);
 314   1      
 315   1      }
 316          /*
 317            线路选择处理函数
 318          
 319          */
 320          void process_line(void)
 321          {
 322   1              unsigned char key;
 323   1              tmp_line=0xff;
 324   1              menu_line();    //显示线路选择界面
 325   1              while(1)
 326   1              {
 327   2                      key=get_key();
 328   2                      switch(key)
 329   2                      {
 330   3                              //按对应数字键,反显数字,并记下线路序号.
 331   3                              case KEY_CODE_NUM1:
 332   3                              case KEY_CODE_NUM2:
 333   3                              case KEY_CODE_NUM3:
 334   3                              case KEY_CODE_NUM4:
 335   3                              case KEY_CODE_NUM5:
 336   3                              case KEY_CODE_NUM6:
 337   3                              case KEY_CODE_NUM7:
 338   3                              case KEY_CODE_NUM8:
 339   3                                      menu_line();    //显示线路选择界面
 340   3                                      if(key<5)
 341   3                                              menu_display_char(0,key-1,key+'0',1);
 342   3                                      else  
 343   3                                              menu_display_char(8,key-5,key+'0',1);
 344   3                                      tmp_line=key-1;
 345   3                              break;
 346   3      
 347   3                              case KEY_CODE_ESC:
 348   3                                      return;
 349   3                              break;
 350   3      
 351   3                              case KEY_CODE_ENTER:
 352   3                                      if(tmp_line>7) return;  
 353   3                                      if(     cur_menu_status==11)
 354   3                                      {
 355   4                                              process_direction();       //显示上下行选择界面
 356   4                                      }
 357   3                                      else if(cur_menu_status==13)
 358   3                                      {
 359   4                                              process_direction();       //显示上下行选择界面
 360   4                                      }
 361   3                                      else if(cur_menu_status==14)
 362   3                                      {
 363   4                                              process_upgps();
C51 COMPILER V8.02   GPS_COLLECT                                                           09/25/2008 19:29:41 PAGE 7   

 364   4                                              
 365   4      
 366   4                                      }
 367   3                                      menu_line();    //显示线路选择界面
 368   3                                      tmp_line=0xff; 
 369   3                              break;
 370   3      
 371   3                              case KEY_CODE_FUNC:
 372   3                                      if(tmp_line>7)break;  
 373   3                                      if(     cur_menu_status==11)
 374   3                                      {
 375   4                                              process_inputline();
 376   4                                              menu_line();     //显示菜单界面
 377   4                                              tmp_line=0xff; 
 378   4                                      }
 379   3                              break;
 380   3                              default:
 381   3                              
 382   3                              break;
 383   3                      }
 384   2      
 385   2              }
 386   1      }
 387          void process_load(void)
 388          {
 389   1              unsigned char key;
 390   1              menu_toload();   //显示更新程序
 391   1              while(1)
 392   1              {
 393   2                      key=get_key();
 394   2                      switch(key)
 395   2                      {
 396   3                              case KEY_CODE_ENTER:
 397   3                                      menu_loading();
 398   3                                      switch_ld_ap();
 399   3                              break;
 400   3                              case KEY_CODE_NO:
 401   3                              break;
 402   3                              
 403   3                              default:
 404   3                                      return;
 405   3                              break;
 406   3      
 407   3                      }
 408   2              }
 409   1      
 410   1      }
 411          //main函数调用,显示菜单界面,按1,2,3,4键有效,按取消或确定键退出
 412          void main_process(void)
 413          {
 414   1              unsigned char key;
 415   1              menu_fun();      //显示菜单界面
 416   1              while(1)
 417   1              {
 418   2                      key=get_key();
 419   2                      switch(key)
 420   2                      {
 421   3                              case KEY_CODE_NUM1:
 422   3                                      cur_menu_status=11;
 423   3                                      process_line();         //线路选择处理函数
 424   3                                      menu_fun();      //显示菜单界面
 425   3                                      cur_menu_status=1;
C51 COMPILER V8.02   GPS_COLLECT                                                           09/25/2008 19:29:41 PAGE 8   

 426   3                              break;
 427   3                              case KEY_CODE_NUM2:
 428   3                                      if(cur_direction==24)
 429   3                                      {  //上行时采集计算存储地址
 430   4                                              if(gps_8line[cur_line].gps_counter_up<6000)
 431   4                                                      gps_receive_flg=!gps_receive_flg;
 432   4                                              else  gps_receive_flg=0;
 433   4                                      }
 434   3                                      if(cur_direction==25)
 435   3                                      {  //上行时采集计算存储地址
 436   4                                              if(gps_8line[cur_line].gps_counter_down<6000)
 437   4                                                      gps_receive_flg=!gps_receive_flg;
 438   4                                              else  gps_receive_flg=0;
 439   4                                      }
 440   3                                      menu_fun();      //显示菜单界面
 441   3                              break;
 442   3                              case KEY_CODE_NUM3:
 443   3                                      cur_menu_status=13;
 444   3                                      process_line();         //线路选择处理函数
 445   3                                      menu_fun();      //显示菜单界面
 446   3                                      cur_menu_status=1;
 447   3                              
 448   3                              break;
 449   3                              case KEY_CODE_NUM4:
 450   3                                      cur_menu_status=14;
 451   3                                      process_line();         //线路选择处理函数
 452   3                                      menu_fun();      //显示菜单界面
 453   3                                      cur_menu_status=1;
 454   3                              
 455   3                              break;
 456   3                              case KEY_CODE_ALT:
 457   3                                      
 458   3                                      process_load();         //线路选择处理函数
 459   3                                      menu_fun();
 460   3                              break;
 461   3      
 462   3                              case KEY_CODE_ESC:
 463   3                              case KEY_CODE_ENTER:
 464   3                                      return;
 465   3                              break;
 466   3      
 467   3                              default:
 468   3                              
 469   3                              break;
 470   3                      }
 471   2      
 472   2              }
 473   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   2909    ----
   CONSTANT SIZE    =     12    ----
   XDATA SIZE       =    538      41
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   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 + -