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

📄 show_window.lst

📁 此程序是GPS定位导航程序
💻 LST
📖 第 1 页 / 共 4 页
字号:
C51 COMPILER V8.02   SHOW_WINDOW                                                           05/25/2008 15:06:03 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE SHOW_WINDOW
OBJECT MODULE PLACED IN show_window.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE show_window.c LARGE BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /*****************************************************************/
   2          /*函数名称: Show_Window.c                                       */
   3          /*函数功能: 基本信息的显示                                      */       
   4          /*有无返回: 无                                                  */
   5          /*修改记录: 无修改记录                                          */
   6          /*编写作者: t483-4-19chenyong                                   */
   7          /*编写日期: 2007-4-06                                           */
   8          /*****************************************************************/
   9          
  10          #include  "common.h"
*** WARNING C318 IN LINE 15 OF common.h: can't open file 'conio.h'
  11          #include  "TS12864A.h"
  12          #include  "delay.h"
  13          #include  "window.h"
  14          #include  "key.h"
  15          #include  "astar.h"
  16          #include  "map.h" 
  17          
  18          // GPS数据接收定义
  19          
  20          extern unsigned char JD[10];                        //经度
  21          extern unsigned char JD_a;                          //经度方向
  22          extern unsigned char WD[9];                             //纬度
  23          extern unsigned char WD_a;                              //纬度方向
  24          extern unsigned char time[6];               //时间
  25          extern unsigned char date[6];                   //日期
  26          extern unsigned char speed[5];                  //速度
  27          extern unsigned char Height[6];                 //高度
  28          extern unsigned char angle[5];                  //方位角
  29          extern unsigned char use_sat[2];                //使用的卫星数
  30          extern unsigned char total_sat[2];              //天空中总卫星数
  31          
  32          //串口中断需要的变量
  33          extern unsigned char seg_count;             //逗号计数器
  34          extern unsigned char dot_count;             //小数点计数器
  35          extern unsigned char byte_count;                //位数计数器
  36          extern unsigned char cmd_number;                //命令类型
  37          extern unsigned char mode;                              //0:结束模式,1:命令模式,2:数据模式
  38          extern unsigned char buf_full;                  //1:整句接收完成,相应数
  39          extern unsigned char cmd[5];                    //命令类型存储数组
  40          
  41          //显示需要的变量
  42          extern unsigned char dsp_count;             //刷新次数计数器      
  43          extern unsigned char time_count;
  44          
  45          extern unsigned char Height_num,a_num,s_num;
  46          
  47          extern unsigned int  Position;
  48          unsigned char key=0xff;
  49          unsigned char i=0;
  50          unsigned char t=0;
  51          unsigned int sum=0;
  52              /*xy坐标*/
  53          unsigned char temp_key[KeyInputN]={0};
  54          
C51 COMPILER V8.02   SHOW_WINDOW                                                           05/25/2008 15:06:03 PAGE 2   

  55          /*****************************************************************/
  56          /* 窗口显示函数:基本信息                    :第一屏 :                                  */
  57          /* 窗口模式:                                                    */
  58          /*      -----------------------------------------------------    */
  59          /*      |                   毕业设计                         |   */
  60          /*      -----------------------------------------------------    */
  61          /*      |                     作品                           |   */
  62          /*      -----------------------------------------------------    */
  63          /*      |                  GPS导航设计                       |   */
  64          /*      -----------------------------------------------------    */
  65          /*字库查询:
  66                              毕(0) 业(1) 设(2) 计(3)                          
  67                                                    作(4) 品(5)
  68                                              导(6) 航(7) 设(8) 计(9)                      */
  69          /*****************************************************************/
  70                                                     
  71          void show_menu_system()
  72          {
  73   1                         
  74   1          CleanScreen();
  75   1              delay_nms(10);
  76   1      
  77   1          Display_Character(2,1,0);      // 毕
  78   1              Display_Character(4,1,1);          // 业
  79   1              Display_Character(6,1,2);          // 设
  80   1              Display_Character(8,1,3);          // 计
  81   1              Display_Character(10,1,4);         // 作
  82   1          Display_Character(12,1,5);     // 品
  83   1              Display_Char(2,3,42);          // G
  84   1          Display_Char(3,3,51);              // P
  85   1              Display_Char(4,3,54);          // S
  86   1          Display_Character(6,3,6);      // 导
  87   1              Display_Character(8,3,7);          // 航
  88   1          Display_Character(10,3,8);     // 设
  89   1              Display_Character(12,3,9);         // 计
  90   1      
  91   1              show_author_information();
  92   1      
  93   1              while(1)
  94   1              {
  95   2                      key= keyscan();
  96   2      //      delay_nms(2500);
  97   2                      switch(key)
  98   2                      {
  99   3                         case 0x00: show_menu_frist(); 
 100   3                                    /* 按0(确定键)键进入菜单界面 */
 101   3                                    break;
 102   3                         default:   break;                                     
 103   3                      }
 104   2              }
 105   1      }
 106          /*****************************************************************/
 107          /* 窗口显示函数:基本信息                    :第二屏 :                                  */
 108          /* 窗口模式:                                                    */
 109          /*      -----------------------------------------------------    */
 110          /*      |                   1: 基本信息                     |    */
 111          /*      -----------------------------------------------------    */
 112          /*      |                   2: 小车导航                     |    */
 113          /*      -----------------------------------------------------    */
 114          /*字库查询:
 115                              基(10) 本(11) 信(12) 息(13)                         
 116                                                    作(4) 品(5)
C51 COMPILER V8.02   SHOW_WINDOW                                                           05/25/2008 15:06:03 PAGE 3   

 117                                              小(14)车(15)导(16) 航(17)                     */
 118          /*****************************************************************/
 119          
 120          void show_menu_frist()
 121          {
 122   1              
 123   1              i=0;       
 124   1          CleanScreen();
 125   1              delay_nms(10);
 126   1      
 127   1              Display_Char(3,3,0);           // 0:
 128   1          Display_Char(4,3,62);                             
 129   1          Display_Character(5,3,10);     // 基
 130   1              Display_Character(7,3,11);         // 本
 131   1          Display_Character(9,3,12);     // 信
 132   1              Display_Character(11,3,13);        // 息
 133   1              Display_Char(3,5,1);           // 1:
 134   1          Display_Char(4,5,62);                      
 135   1          Display_Character(5,5,14);     // 小
 136   1              Display_Character(7,5,15);         // 车
 137   1          Display_Character(9,5,16);     // 导
 138   1              Display_Character(11,5,17);        // 航
 139   1              while(1)
 140   1              {
 141   2                      
 142   2                      if(i==5)
 143   2                      {      
 144   3                                 i=0;
 145   3                                 Clear_Area(0,1,16); 
 146   3                      }
 147   2                      Display_Character(2*(7-i),1,30+i);
 148   2                      delay_nms(2500);
 149   2              if(i<3)   
 150   2                                Clear_Area(2*(7-i),1,2); 
 151   2                  Display_Character(2*i,1,30+i);
 152   2       
 153   2                              
 154   2                      key= keyscan();
 155   2      //              delay_nms(2500);
 156   2                      switch(key)
 157   2                      {
 158   3                         case 0x00: show_Base_Function_Key(); 
 159   3                                    /* 按0(确定键)键进入基本信息显示界面 */
 160   3                                    break;
 161   3                         case 0x01:
 162   3                                    GPS_Navigation();
 163   3                                    /* 按1(确定键)键进入小车导航显示界面 */
 164   3                                        break;
 165   3                         default:   break;                                     
 166   3                      }
 167   2                      i++;
 168   2              }
 169   1      }
 170          
 171          
 172          
 173          void show_Base_Function_Key()
 174          {
 175   1          CleanScreen();
 176   1              delay_nms(10);
 177   1      
 178   1              Display_Char(3,1,0);           // 0:
C51 COMPILER V8.02   SHOW_WINDOW                                                           05/25/2008 15:06:03 PAGE 4   

 179   1          Display_Char(4,1,62);                             
 180   1          Display_Character(6,1,22);     // 位
 181   1              Display_Character(8,1,23);         // 置
 182   1              Display_Char(3,3,1);           // 1:
 183   1          Display_Char(4,3,62);                      
 184   1          Display_Character(6,3,24);     // 时
 185   1              Display_Character(8,3,25);         // 间
 186   1              Display_Char(3,5,2);           // 2:
 187   1          Display_Char(4,5,62);                      
 188   1          Display_Character(6,5,26);     // 其
 189   1              Display_Character(8,5,27);         // 它
 190   1      
 191   1              while(1)
 192   1              {
 193   2                      key= keyscan();
 194   2                      delay_nms(3500);
 195   2                      switch(key)
 196   2                      {
 197   3                         case 0x00:   while(1)
 198   3                                                      {
 199   4                                                          CleanScreen();
 200   4                                      delay_nms(1);
 201   4                                                              show_menu_JingDu();   // 经度
 202   4                                                              show_menu_WeiDu();        // 纬度
 203   4                                                              show_menu_GaoDu();    // 高度
 204   4                                                              key= keyscan(); 
 205   4                                                              if(key==0x0f)break;                                             
 206   4                                                      }                                            
 207   3                                                  break;
 208   3                         case 0x01:   while(1)
 209   3                                      {
 210   4                                                      
 211   4                                          CleanScreen();
 212   4                                      delay_nms(1);
 213   4                                              show_menu_ShiJian();  // 时间   
 214   4                                                              key= keyscan();
 215   4                                                              if(key==0x0f)break;                                     
 216   4                                                      }
 217   3                                      break;
 218   3                 case 0x02:   while(1)
 219   3                                      {                                       
 220   4                                              CleanScreen();
 221   4                                      delay_nms(1);
 222   4                                              show_menu_SuDu();         // 速度 
 223   4                                              show_menu_sat();          // 使用的卫星数

⌨️ 快捷键说明

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