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

📄 try.lst

📁 GPS开发 NEA1803 51单片机与12864 由串口中断收取数据 显示经度纬度 高度 速度 时间 使用卫星数
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V8.02   TRY                                                                   07/16/2008 13:32:05 PAGE 1   


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

line level    source

   1          /*************************************
   2               GPS解码12864显示程序
   3               作者:HEKUN
   4          ***************************************/
   5          
   6          #include <AT89X51.H>
   7          #include <stdio.h>
   8          #include "LCD12864_c51.h"
   9          char code TIME_AREA= 8;                  //时区
  10          //GPS数据存储数组
  11          unsigned char JD[10];                  //经度
  12          unsigned char JD_a;                  //经度方向
  13          unsigned char WD[9];                  //纬度
  14          unsigned char WD_a;                  //纬度方向
  15          unsigned char time[6];            //时间
  16          unsigned char speed[4]; 
  17          unsigned char date[6]; 
  18          //串口中断需要的变量
  19          unsigned char seg_count;            //逗号计数器
  20          //unsigned char dot_count;            //小数点计数器
  21          unsigned char byte_count;            //位数计数器
  22          unsigned char cmd_number;            //命令类型
  23          unsigned char mode;                        //0:结束模式,1:命令模式,2:数据模式
  24          unsigned char buf_full;                  //1:整句接收完成,相应数据有效。0:缓存数据无效。
  25          unsigned char cmd[5];                  //命令类型存储数组
  26          
  27          //显示需要的变量
  28          unsigned int dsp_count;            //刷新次数计数器
  29          unsigned char time_count;
  30          void sys_init(void);
  31          main()
  32          {
  33   1           unsigned char i;
  34   1       //    char Bhour=0;
  35   1           sys_init();
  36   1                      while(1)
  37   1                      {
  38   2                 if(buf_full==0)                        //无GPS信号时
  39   2                 {
  40   3                       dsp_count++;
  41   3                       if(dsp_count>=65000){
  42   4                             Init_Lcd12864();                  //清屏
  43   4                                                 ResetCursor(0,2);
  44   4                                         printf("No GPS connect..");
  45   4                             while(buf_full==0);
  46   4                             ClearAS();      
  47   4                             dsp_count=0;
  48   4                       }
  49   3                 }
  50   2                 else if(buf_full)
  51   2                         {                             //有GPS信号时                  //RMC语句
  52   3                                         ResetCursor(0,0);
  53   3                                                         printf("JD:");
  54   3                                                                         ResetCursor(3,0);
  55   3                                                         printf("%c",JD_a);
C51 COMPILER V8.02   TRY                                                                   07/16/2008 13:32:05 PAGE 2   

  56   3                                                 //显示经度
  57   3                                                       for(i=0;i<10;i++){
  58   4                                                                                       ResetCursor(i+4,0);
  59   4                                                                                       printf("%c",JD[i]);
  60   4      
  61   4                                         }
  62   3                                               ResetCursor(0,1);
  63   3                                                           printf("WD:");
  64   3                                                                               ResetCursor(3,1);
  65   3                                                           printf("%c",WD_a);
  66   3                                                                               for(i=0;i<9;i++)                                           //显示纬度
  67   3                                                                               {
  68   4                                                                                      ResetCursor(i+4,1);
  69   4                                                                              printf("%c",WD[i]);
  70   4                                                                               }
  71   3                                                                              ResetCursor(0,2);
  72   3                                                                      printf("BJT:");
  73   3      //                                                                      ResetCursor(4,2);
  74   3      //                                                                      printf("%c",date[4]);
  75   3      //                                                                      ResetCursor(5,2);
  76   3      //                                                                      printf("%c",date[5]);
  77   3      //                                                                      ResetCursor(6,2);
  78   3      //                                                                      printf("%c",date[2]);
  79   3      //                                                                      ResetCursor(7,2);
  80   3      //                                                                      printf("%c",date[3]);
  81   3      //                                                                      ResetCursor(8,2);
  82   3      //                                                                      printf("%c",date[0]);
  83   3      //                                                                      ResetCursor(9,2);
  84   3      //                                                                      printf("%c",date[1]);
  85   3      //                                                                      time[0]=((time[0]-'0')*10+(time[1]-'0'))/10+'0';
  86   3      //                                                                              time[1]=((time[0]-'0')*10+(time[1]-'0'))%10+'0';
  87   3                                                                              for(i=0;i<6;i++)                                            //显示Time
  88   3                                                                               {      
  89   4                                                                                      
  90   4                                                                                      ResetCursor(i+10,2);
  91   4                                                                              printf("%c",time[i]);
  92   4                                                                               }
  93   3                                              //                               ResetCursor(0,3);
  94   3                                              ////                     printf("Speed:");
  95   3                                              //                                      for(i=0;i<4;i++)                                            //显示speed
  96   3                                              //                               {
  97   3                                              //                                      ResetCursor(i+6,3);
  98   3                                              ///                             printf("%c",speed[i]);
  99   3                                              //                               }
 100   3                                              //                               ResetCursor(10,3);
 101   3                                              //                               printf("knots");
 102   3                                                                         dsp_count=0;
 103   3                                                                         buf_full&=~0x01;
 104   3                             }
 105   2                                       
 106   2                           
 107   2               }               
 108   1      }                      
 109          
 110                                     
 111                                 
 112                           
 113          //系统初始化
 114          void sys_init() 
 115          {
 116   1      //     unsigned char i;
 117   1           SCON = 0x50;      /* SCON: mode 1, 8-bit UART, enable rcvr */

⌨️ 快捷键说明

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