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

📄 show_window.lst

📁 此程序是GPS定位导航程序
💻 LST
📖 第 1 页 / 共 4 页
字号:
 224   4                                                              show_sum_sat();           // 天空中总卫星数     
 225   4                                                              key= keyscan();
 226   4                                                              if(key==0x0f)break;                                     
 227   4                                                      } 
 228   3      
 229   3                                                      break;
 230   3                         case 0x0f:   show_menu_frist();
 231   3                                          break;      
 232   3                                                      /*等待按键值为8,返回原菜单*/
 233   3                         default:   break;                                     
 234   3                      }
 235   2              
 236   2              }
 237   1      
 238   1      
 239   1      
 240   1      }
C51 COMPILER V8.02   SHOW_WINDOW                                                           05/25/2008 15:06:03 PAGE 5   

 241          
 242          /*****************************************************************/
 243          /* 窗口显示函数:基本信息                    :第三屏 :                                  */
 244          /* 窗口模式:                       00000.0000                   */
 245          /*    
 246                 ----------------------- ------- --------------------------
 247                /经度半球           1       'W' 或 'E'                                     \
 248               | ----------------------- ------- --------------------------
 249               | 经度坐标           7       WGS84坐标系统,坐标格式ddmmmmm |
 250               |                            在第4位数字后省略了一个小数点  |
 251               | ----------------------- ------- ---------------------------
 252          
 253                                                                                               */
 254          /*****************************************************************/
 255          void show_menu_JingDu()
 256          {
 257   1              
 258   1              unsigned char temp_jd=0;
 259   1                                                         
 260   1          temp_jd = JD_a-48;             // 转换为ASCII
 261   1              temp_jd = 19+temp_jd;       
 262   1              Display_Char(0,1,temp_jd);     // 经度的方向
 263   1          Display_Char(1,1,62);              // : 
 264   1      
 265   1              if(buf_full|0x01)
 266   1              { 
 267   2                      for(i=0;i<5;i++)
 268   2                              {               
 269   3                                                      
 270   3                                          if((((use_sat[0]-0x30)*10+(use_sat[1]-0x30))>=4)&&(((use_sat[0]-0x30)*10+(use_sat[1]-0x30))<=12))
 271   3                                                              Display_Char(2+i,1,JD[i]-48);
 272   3                                              else
 273   3                                                              Display_Char(2+i,1,0); 
 274   3                              }
 275   2                      Display_Char(7,1,66);
 276   2                      for(i=1;i<5;i++)
 277   2                      {
 278   3                                      if((((use_sat[0]-0x30)*10+(use_sat[1]-0x30))>=4)&&(((use_sat[0]-0x30)*10+(use_sat[1]-0x30))<=12
             -))
 279   3                                                              Display_Char(7+i,1,JD[i+5]-48);
 280   3                                          else
 281   3                                      Display_Char(7+i,1,0);
 282   3                              }               
 283   2              }
 284   1      } 
 285          /*****************************************************************/
 286          /* 窗口显示函数:基本信息                    :第三屏 :                                  */
 287          /* 窗口模式:                       0000.0000                    */
 288          /*    
 289                 ----------------------- ------- --------------------------
 290                /伟度半球           1       'N' 或 'S'                                     \
 291               | ----------------------- ------- --------------------------
 292               | 纬度坐标           7       WGS84坐标系统,坐标格式ddmmmmm |
 293               |                            在第4位数字后省略了一个小数点  |
 294               | ----------------------- ------- ---------------------------
 295          
 296                                                                                               */
 297          /*****************************************************************/
 298          void show_menu_WeiDu()
 299          {
 300   1      
 301   1      
C51 COMPILER V8.02   SHOW_WINDOW                                                           05/25/2008 15:06:03 PAGE 6   

 302   1              unsigned char temp_wd=0;
 303   1                                                                         
 304   1          temp_wd = WD_a-48;            // 转换为ASCII
 305   1              temp_wd = 19+temp_wd;       
 306   1      
 307   1              Display_Char(0,3,temp_wd);     // 纬度的方向
 308   1          Display_Char(1,3,62);              // : 
 309   1              if(buf_full|0x01)
 310   1              {
 311   2                      for(i=0;i<4;i++)
 312   2                      {
 313   3                                      if((((use_sat[0]-0x30)*10+(use_sat[1]-0x30))>=4)&&(((use_sat[0]-0x30)*10+(use_sat[1]-0x30))<=12
             -))
 314   3                                                              Display_Char(2+i,3,WD[i]-48);
 315   3                                          else
 316   3                                              Display_Char(2+i,3,0);
 317   3                              }
 318   2                              Display_Char(6,3,66);
 319   2                              for(i=0;i<4;i++)
 320   2                              {
 321   3                                      if((((use_sat[0]-0x30)*10+(use_sat[1]-0x30))>=4)&&(((use_sat[0]-0x30)*10+(use_sat[1]-0x30))<=12
             -))
 322   3                                                              Display_Char(7+i,3,WD[i+5]-48);
 323   3                                          else
 324   3                                                      Display_Char(7+i,3,0);
 325   3                              }
 326   2              }
 327   1      }
 328          /*****************************************************************/
 329          /* 窗口显示函数:基本信息                    :第三屏 :                                  */
 330          /* 窗口模式:                         000000                     */
 331          /*    
 332                 ----------------------- ------- -----------------------
 333               /年                      2       UTC年的最后两位数字         \
 334              | ----------------------- ------- ------------------------
 335              | 月                      2       UTC月, "01".."12"           |
 336          T   | ----------------------- ------- ------------------------
 337          i   | 日                      2       UTC日, "01".."31"           |
 338          m   | ----------------------- ------- ------------------------
 339          e   | 时                      2       UTC时, "00".."23"           |
 340              | ----------------------- ------- ------------------------
 341              | 分                      2       UTC分, "00".."59"           |
 342              | ----------------------- ------- ------------------------
 343               \秒                      2       UTC秒, "00".."59"           /
 344                ----------------------- ------- ------------------------
 345          
 346          
 347                                                                                               */
 348          /*****************************************************************/
 349          void show_menu_ShiJian()
 350          {
 351   1      
 352   1          unsigned char xdata dsp_count=0;                       //刷新次数计数器
 353   1          unsigned char xdata Bhour=0,Bday=0,Bmonth=0;
 354   1          unsigned int  xdata Byear=0;
 355   1              
 356   1          CleanScreen();
 357   1              delay_nms(100);
 358   1              Display_Char(0,3,55);          // T
 359   1          Display_Char(1,3,62);              // : 
 360   1              delay_nus(100);
 361   1      
C51 COMPILER V8.02   SHOW_WINDOW                                                           05/25/2008 15:06:03 PAGE 7   

 362   1                      if(buf_full|0x08)                                                           //北京时间转换
 363   1                              {
 364   2                                      if(Bhour!=((time[0]-0x30)*10+time[1]-0x30)+TIME_AREA)
 365   2                                      {
 366   3                                              Bhour=((time[0]-0x30)*10+time[1]-0x30)+TIME_AREA;                       
 367   3                                              Bday=(date[0]-0x30)*10+date[1]-0x30;
 368   3                                              Bmonth=(date[2]-0x30)*10+date[3]-0x30;
 369   3                                              Byear=(date[4]-0x30)*10+date[5]-0x30+2000;
 370   3                                              if(Bhour>=24)
 371   3                                              {                                                       //如果小时数大于24
 372   4                                                      Bhour-=24;                                              //小时数减24
 373   4                                                      Bday++;                                                 //日期数加1
 374   4                                                      switch(Bday)
 375   4                                                      {                                                   //判断日期
 376   5                                                              case 29:                                        //普通年的2月份
 377   5                                                                          if((!((Byear%400==0)||((Byear%4==0)&&(Byear%100!=0)))&&(Bmonth==2)))
 378   5                                                                              {
 379   6                                                                                              Bday=1;
 380   6                                                                                              Bmonth++;
 381   6                                                                              }
 382   5                                                                              break;
 383   5                                                              case 30:                                                        //如果是闰年的2月
 384   5                                                                              if(((Byear%400==0)||((Byear%4==0)&&(Byear%100!=0)))&&(Bmonth==2))
 385   5                                                                              {
 386   6                                                                                              Bday=1;
 387   6                                                                                              Bmonth++;
 388   6                                                                              }
 389   5                                                                              break;
 390   5                                                              case 31:
 391   5                                                                              if((Bmonth==4)||(Bmonth==6)||(Bmonth==9)||(Bmonth==11))
 392   5                                                                              {
 393   6                                                                                              Bday=1;
 394   6                                                                                              Bmonth++;
 395   6                                                                              }
 396   5                                                                              break;
 397   5                                                              case 32:
 398   5                                                                              Bday=1;
 399   5                                                                              Bmonth++;
 400   5                                                                              if(Bmonth>=13)
 401   5                                                                              {
 402   6                                                                                              Byear++;
 403   6                                                                                              Bmonth=1;
 404   6                                                                              }
 405   5                                                                              break;
 406   5                                                      }
 407   4                                              }
 408   3                                      }
 409   2      
 410   2                              Display_Char(0,1,39);          // D
 411   2                      Display_Char(1,1,62);          // : 
 412   2      
 413   2                                      Display_Char(3,1,2);                        // 2
 414   2                                      Display_Char(4,1,0);                                            // 0
 415   2                                      Display_Char(5,1,(Byear%100)/10);               
 416   2                                      Display_Char(6,1,Byear%10);
 417   2                                      Display_Char(7,1,68);
 418   2                                      Display_Char(8,1,Bmonth/10);
 419   2                                      Display_Char(9,1,Bmonth%10);
 420   2                                      Display_Char(10,1,68);
 421   2                                      Display_Char(11,1,Bday/10);
 422   2                                      Display_Char(12,1,Bday%10);
 423   2                                      
C51 COMPILER V8.02   SHOW_WINDOW                                                           05/25/2008 15:06:03 PAGE 8   

 424   2                              Display_Char(0,5,52);          // Q
 425   2                      Display_Char(1,5,62);          // : 
 426   2                                      Display_Character(4,5,28);         // 星期
 427   2                                      Display_Character(6,5,29);
 428   2      
 429   2                                      switch(week(Byear%100,Bmonth,Bday))
 430   2                                      {
 431   3                                              case 0:
 432   3                                                      Display_Char(8,5,7);                  // 星期日
 433   3                                                      break;
 434   3                                              case 1:                                                                  
 435   3                                                      Display_Char(8,5,1);                              // 星期一
 436   3                                                      break;
 437   3                                              case 2:                                                                   
 438   3                                                      Display_Char(8,5,2);                              // 星期二
 439   3                                                      break;                                          
 440   3                                              case 3:
 441   3                                                      Display_Char(8,5,3);                              // 星期三
 442   3                                                      break;                                          
 443   3                                              case 4:
 444   3                                                      Display_Char(8,5,4);                              // 星期四
 445   3                                                      break;                                          
 446   3                                              case 5:
 447   3                                                      Display_Char(8,5,5);                              // 星期五
 448   3                                                      break;                                          
 449   3                                              case 6:
 450   3                                                      Display_Char(8,5,6);                              // 星期六
 451   3                                                      break;                                          

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -