gps_average.c

来自「This a support library and assorted samp」· C语言 代码 · 共 42 行

C
42
字号
#include "as_gps.h"int main(int argc, char **argv){  void *data;  double lat, lgt;  unsigned fix, read_count = 0;  if(as_gps_open("/dev/gps"))  {    printf("Can't open device\n");    exit(1);  }  while(1)  {    unsigned char result = as_gps_handle_input(&data);    if(result == AS_GPS_RCV_POSITION_DATA)     {      AS_GPS_PositionData *pos = (AS_GPS_PositionData *)data;      fix = pos->status & 0x0f;      if(fix == 3 || fix == 4) /* at least a 2D or 3D fix */      {        lat = (pos->lat + ((double)read_count * lat)) /                          ((double)read_count+1);        lgt = (pos->lgt + ((double)read_count * lgt)) /                          ((double)read_count+1);        printf("%5u: Lat: %3.16f, Lgt: %3.16f\n", read_count, lat, lgt);        read_count++;      }    }    free(data);  }  as_gps_close(); }

⌨️ 快捷键说明

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