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

📄 菜单.lst

📁 通过车载终端采集GPS数据
💻 LST
字号:
C51 COMPILER V8.02   菜单                                                                  09/25/2008 19:29:40 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE 菜单
OBJECT MODULE PLACED IN .\output\bin\菜单.obj
COMPILER INVOKED BY: C:\Keil802\C51\BIN\C51.EXE menu\菜单.c LARGE BROWSE INCDIR(audio\;eeprom\;extendUART\;flash\;gps\;i
                    -nter\;key\;mcu\;menu\;usb\;gprs\;main\;1wire\) DEBUG OBJECTEXTEND PRINT(.\output\菜单.lst) OBJECT(.\output\bin\菜单.obj)

line level    source

   1          #include "display.h"
   2          #include "gps.h"
   3          #include "菜单.h"
   4          #include "string.h"
   5          #include "gps_collect.h"
   6          extern GPS_LINE_INFO gps_8line[8];
   7          extern unsigned char cur_line;
   8          extern unsigned char cur_direction;
   9          extern GPS_STRING gps_string;
  10          unsigned char gps_OK;
  11          //存点时显示的界面
  12          void menu_main(void)
  13          {
  14   1              unsigned char xdata lcd_row0[17]="纬度: ----.---- ";
  15   1              unsigned char xdata lcd_row1[17]="经度:-----.---- ";
  16   1              unsigned char xdata lcd_row2[17]="----路-   速度--";
  17   1              unsigned char xdata lcd_row3[17]="站--拐--   --.--";
  18   1              if(gps_OK)
  19   1              {
  20   2                      memcpy(lcd_row0+6,gps_string.latitude,9);
  21   2                      memcpy(lcd_row1+5,gps_string.longitude,10);
  22   2                      memcpy(lcd_row2+14,gps_string.speed,2);
  23   2                      lcd_row2[8]=gps_string.valid;
  24   2              }
  25   1              else lcd_row2[8]='V';
  26   1              memcpy(lcd_row2,gps_8line[cur_line].linename,4);
  27   1              memcpy(lcd_row2+6,&cur_direction,1);
  28   1      
  29   1              if(cur_direction==24)
  30   1              {
  31   2                      lcd_row3[2]=(gps_8line[cur_line].station_counter_up)/10+'0';
  32   2                      lcd_row3[3]=(gps_8line[cur_line].station_counter_up)%10+'0';
  33   2                      lcd_row3[6]=(gps_8line[cur_line].corner_counter_up)/10+'0';
  34   2                      lcd_row3[7]=(gps_8line[cur_line].corner_counter_up)%10+'0';
  35   2                      if(gps_8line[cur_line].gps_counter_up==0||gps_8line[cur_line].gps_counter_up>6000)
  36   2                              memcpy(lcd_row3+10,"100.00",6);
  37   2                      else
  38   2                      {
  39   3                              lcd_row3[11]=(6000-gps_8line[cur_line].gps_counter_up)/600+'0';
  40   3                              lcd_row3[12]=(6000-gps_8line[cur_line].gps_counter_up)/60%10+'0';
  41   3      
  42   3                              lcd_row3[14]=(6000-gps_8line[cur_line].gps_counter_up)%60/10+'0';
  43   3                              lcd_row3[15]=(6000-gps_8line[cur_line].gps_counter_up)%60%10+'0';
  44   3      
  45   3      
  46   3                      }
  47   2                      
  48   2              }
  49   1              else if(cur_direction==25)
  50   1              {
  51   2                      lcd_row3[2]=(gps_8line[cur_line].station_counter_down)/10+'0';
  52   2                      lcd_row3[3]=(gps_8line[cur_line].station_counter_down)%10+'0';
  53   2                      lcd_row3[6]=(gps_8line[cur_line].corner_counter_down)/10+'0';
  54   2                      lcd_row3[7]=(gps_8line[cur_line].corner_counter_down)%10+'0';
C51 COMPILER V8.02   菜单                                                                  09/25/2008 19:29:40 PAGE 2   

  55   2                      if(gps_8line[cur_line].gps_counter_down==0||gps_8line[cur_line].gps_counter_down>6000)
  56   2                              memcpy(lcd_row3+10,"100.00",6);
  57   2                      else
  58   2                      {
  59   3                              lcd_row3[11]=(6000-gps_8line[cur_line].gps_counter_down)/600+'0';
  60   3                              lcd_row3[12]=(6000-gps_8line[cur_line].gps_counter_down)/60%10+'0';
  61   3      
  62   3                              lcd_row3[14]=(6000-gps_8line[cur_line].gps_counter_down)%60/10+'0';
  63   3                              lcd_row3[15]=(6000-gps_8line[cur_line].gps_counter_down)%60%10+'0';
  64   3      
  65   3      
  66   3                      }
  67   2              }
  68   1              lcd_clear_srceen();
  69   1      
  70   1              display_attribute(0,0,0);
  71   1              display_string(lcd_row0);
  72   1      
  73   1              display_attribute(0,1,0);
  74   1              display_string(lcd_row1);
  75   1      
  76   1              display_attribute(0,2,0);
  77   1              display_string(lcd_row2);
  78   1      
  79   1              display_attribute(0,3,0);
  80   1              display_string(lcd_row3);
  81   1      
  82   1      
  83   1      }
  84          //显示功能选择菜单界面
  85          unsigned char code fun_menu[5][17]=
  86          {"1 线路选择      ",
  87           "2 开始采集      ",
  88           "3 删除gps数据   ",
  89           "4 上传至电脑    ",
  90           "2 暂停采集      "
  91          };
  92          extern unsigned char gps_receive_flg;
  93          void menu_fun(void)
  94          {
  95   1              lcd_clear_srceen();
  96   1      
  97   1              display_attribute(0,0,0);
  98   1              display_string(fun_menu[0]);
  99   1      
 100   1              if(gps_receive_flg!=0)
 101   1              {
 102   2                      display_attribute(0,1,0);
 103   2                      display_string(fun_menu[4]);
 104   2              }
 105   1              else 
 106   1              {
 107   2                      display_attribute(0,1,0);
 108   2                      display_string(fun_menu[1]);
 109   2              }
 110   1              display_attribute(0,2,0);
 111   1              display_string(fun_menu[2]);
 112   1      
 113   1              display_attribute(0,3,0);
 114   1              display_string(fun_menu[3]);
 115   1      
 116   1      }
C51 COMPILER V8.02   菜单                                                                  09/25/2008 19:29:40 PAGE 3   

 117          //线路选择界面
 118          void menu_line(void)
 119          {
 120   1              unsigned char xdata lcd_row0[17]="1-????路5-????路";
 121   1              unsigned char xdata lcd_row1[17]="2-????路6-????路";
 122   1              unsigned char xdata lcd_row2[17]="3-????路7-????路";
 123   1              unsigned char xdata lcd_row3[17]="4-????路8-????路";
 124   1              memcpy(lcd_row0+2,gps_8line[0].linename,4);
 125   1              memcpy(lcd_row1+2,gps_8line[1].linename,4);
 126   1              memcpy(lcd_row2+2,gps_8line[2].linename,4);
 127   1              memcpy(lcd_row3+2,gps_8line[3].linename,4);
 128   1      
 129   1              memcpy(lcd_row0+10,gps_8line[4].linename,4);
 130   1              memcpy(lcd_row1+10,gps_8line[5].linename,4);
 131   1              memcpy(lcd_row2+10,gps_8line[6].linename,4);
 132   1              memcpy(lcd_row3+10,gps_8line[7].linename,4);
 133   1      
 134   1              lcd_clear_srceen();
 135   1      
 136   1              display_attribute(0,0,0);
 137   1              display_string(lcd_row0);
 138   1      
 139   1              display_attribute(0,1,0);
 140   1              display_string(lcd_row1);
 141   1      
 142   1              display_attribute(0,2,0);
 143   1              display_string(lcd_row2);
 144   1      
 145   1              display_attribute(0,3,0);
 146   1              display_string(lcd_row3);
 147   1      }
 148          //显示上下行选择界面
 149          unsigned char code direction_menu[4][17]=
 150          {
 151           "请选择上下行!   ",
 152           "1 上行          ",
 153           "2 下行          ",
 154           "                ",
 155          };
 156          void menu_direction(void)
 157          {
 158   1              lcd_clear_srceen();
 159   1      
 160   1              display_attribute(0,0,0);
 161   1              display_string(direction_menu[0]);
 162   1      
 163   1              display_attribute(0,1,0);
 164   1              display_string(direction_menu[1]);
 165   1      
 166   1              display_attribute(0,2,0);
 167   1              display_string(direction_menu[2]);
 168   1      
 169   1      
 170   1              display_attribute(0,3,0);
 171   1              display_string(direction_menu[3]);
 172   1      
 173   1      }
 174          //上传到电脑等待界面
 175          unsigned char code up_gps_record[4][17]=
 176          {"上行: ----/---- ",
 177           "下行: ----/---- ",
 178           "正在上传到电脑! ",
C51 COMPILER V8.02   菜单                                                                  09/25/2008 19:29:40 PAGE 4   

 179           "请稍后... ...   ",
 180          };
 181          void menu_up_gps_record(void)
 182          {
 183   1              lcd_clear_srceen();
 184   1      
 185   1              display_attribute(0,0,0);
 186   1              display_string(up_gps_record[0]);
 187   1      
 188   1              display_attribute(0,1,0);
 189   1              display_string(up_gps_record[1]);
 190   1      
 191   1              display_attribute(0,2,0);
 192   1              display_string(up_gps_record[2]);
 193   1      
 194   1      
 195   1              display_attribute(0,3,0);
 196   1              display_string(up_gps_record[3]);
 197   1      
 198   1      }
 199          //针对所有的操作完成界面
 200          unsigned char code process_over[4][17]=
 201          {"                ",
 202           "     成功!      ",
 203           "                ",
 204           "                ",
 205          };
 206          void menu_process_over(void)
 207          {
 208   1              lcd_clear_srceen();
 209   1      
 210   1              display_attribute(0,0,0);
 211   1              display_string(process_over[0]);
 212   1      
 213   1              display_attribute(0,1,0);
 214   1              display_string(process_over[1]);
 215   1      
 216   1              display_attribute(0,2,0);
 217   1              display_string(process_over[2]);
 218   1      
 219   1      
 220   1              display_attribute(0,3,0);
 221   1              display_string(process_over[3]);
 222   1      
 223   1      }
 224          //线路名修改界面
 225          unsigned char code inputline_menu[4][17]=
 226          {"请输入线路名:   ",
 227           "     ----路     ",
 228           "                ",
 229           "                ",
 230          };
 231          void menu_inputline(void)
 232          {
 233   1              lcd_clear_srceen();
 234   1      
 235   1              display_attribute(0,0,0);
 236   1              display_string(inputline_menu[0]);
 237   1      
 238   1              display_attribute(0,1,0);
 239   1              display_string(inputline_menu[1]);
 240   1      
C51 COMPILER V8.02   菜单                                                                  09/25/2008 19:29:40 PAGE 5   

 241   1              display_attribute(0,2,0);
 242   1              display_string(inputline_menu[2]);
 243   1      
 244   1      
 245   1              display_attribute(0,3,0);
 246   1              display_string(inputline_menu[3]);
 247   1      
 248   1      }
 249          unsigned char code toload_menu[4][17]=
 250          {"程序更新不可恢复",
 251           "                ",
 252           "   确定更新吗

⌨️ 快捷键说明

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