X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=ao_gps.c;h=353272f1badb4558a7825a13387d49b2b87b4564;hp=80b96aa7ca9af1f1dafc44d307ba34cb79d0c61f;hb=4ae74fffb939d67424efa3e7f433637f1f920ebc;hpb=43c8f7012102cdb591ace899420c10e4a78385ad diff --git a/ao_gps.c b/ao_gps.c index 80b96aa7..353272f1 100644 --- a/ao_gps.c +++ b/ao_gps.c @@ -253,49 +253,7 @@ ao_gps(void) __reentrant } } -void -ao_gps_report(void) -{ - static __xdata struct ao_log_record gps_log; - static __xdata struct ao_telemetry gps_telemetry; - static __xdata struct ao_gps_data gps_data; - - for (;;) { - ao_sleep(&ao_gps_data); - ao_mutex_get(&ao_gps_mutex); - memcpy(&gps_data, &ao_gps_data, sizeof (struct ao_gps_data)); - ao_mutex_put(&ao_gps_mutex); - - gps_log.tick = ao_time(); - gps_log.type = AO_LOG_GPS_TIME; - gps_log.u.gps_time.hour = gps_data.hour; - gps_log.u.gps_time.minute = gps_data.minute; - gps_log.u.gps_time.second = gps_data.second; - gps_log.u.gps_time.flags = gps_data.flags; - ao_log_data(&gps_log); - gps_log.type = AO_LOG_GPS_LAT; - gps_log.u.gps_latitude.degrees = gps_data.latitude.degrees; - gps_log.u.gps_latitude.minutes = gps_data.latitude.minutes; - gps_log.u.gps_latitude.minutes_fraction = gps_data.latitude.minutes_fraction; - ao_log_data(&gps_log); - gps_log.type = AO_LOG_GPS_LON; - gps_log.u.gps_longitude.degrees = gps_data.longitude.degrees; - gps_log.u.gps_longitude.minutes = gps_data.longitude.minutes; - gps_log.u.gps_longitude.minutes_fraction = gps_data.longitude.minutes_fraction; - ao_log_data(&gps_log); - gps_log.type = AO_LOG_GPS_ALT; - gps_log.u.gps_altitude.altitude = gps_data.altitude; - gps_log.u.gps_altitude.unused = 0xffff; - ao_log_data(&gps_log); - gps_telemetry.type = AO_TELEMETRY_GPS; - memcpy(&gps_telemetry.u.gps, &gps_data, sizeof (struct ao_gps_data)); - ao_telemetry_send(&gps_telemetry); - } - -} - __xdata struct ao_task ao_gps_task; -__xdata struct ao_task ao_gps_report_task; static void gps_dump(void) __reentrant @@ -306,7 +264,7 @@ gps_dump(void) __reentrant } __code struct ao_cmds ao_gps_cmds[] = { - { 'g', gps_dump, "g Display current GPS values\n" }, + { 'g', gps_dump, "g Display current GPS values" }, { 0, gps_dump, NULL }, }; @@ -314,6 +272,5 @@ void ao_gps_init(void) { ao_add_task(&ao_gps_task, ao_gps, "gps"); - ao_add_task(&ao_gps_report_task, ao_gps_report, "gps_report"); ao_cmd_register(&ao_gps_cmds[0]); }