|
@@ -24,20 +24,32 @@ static void render_callback(Canvas* const canvas, void* context)
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ canvas_set_font(canvas, FontPrimary);
|
|
|
|
|
+ canvas_draw_str_aligned(canvas, 32, 8, AlignCenter, AlignBottom, "Latitude");
|
|
|
|
|
+ canvas_draw_str_aligned(canvas, 96, 8, AlignCenter, AlignBottom, "Longitude");
|
|
|
|
|
+ canvas_draw_str_aligned(canvas, 21, 30, AlignCenter, AlignBottom, "Course");
|
|
|
|
|
+ canvas_draw_str_aligned(canvas, 64, 30, AlignCenter, AlignBottom, "Speed");
|
|
|
|
|
+ canvas_draw_str_aligned(canvas, 107, 30, AlignCenter, AlignBottom, "Altitude");
|
|
|
|
|
+ canvas_draw_str_aligned(canvas, 32, 52, AlignCenter, AlignBottom, "Satellites");
|
|
|
|
|
+ canvas_draw_str_aligned(canvas, 96, 52, AlignCenter, AlignBottom, "Last Fix");
|
|
|
|
|
+
|
|
|
canvas_set_font(canvas, FontSecondary);
|
|
canvas_set_font(canvas, FontSecondary);
|
|
|
char buffer[64];
|
|
char buffer[64];
|
|
|
- snprintf(buffer, 64, "LAT: %f", (double)gps_uart->status.latitude);
|
|
|
|
|
- canvas_draw_str_aligned(canvas, 10, 10, AlignLeft, AlignBottom, buffer);
|
|
|
|
|
- snprintf(buffer, 64, "LON: %f", (double)gps_uart->status.longitude);
|
|
|
|
|
- canvas_draw_str_aligned(canvas, 10, 20, AlignLeft, AlignBottom, buffer);
|
|
|
|
|
- snprintf(buffer, 64, "C/S: %.1f / %.2fkn", (double)gps_uart->status.course, (double)gps_uart->status.speed);
|
|
|
|
|
- canvas_draw_str_aligned(canvas, 10, 30, AlignLeft, AlignBottom, buffer);
|
|
|
|
|
- snprintf(buffer, 64, "ALT: %.1f %c", (double)gps_uart->status.altitude, gps_uart->status.altitude_units);
|
|
|
|
|
- canvas_draw_str_aligned(canvas, 10, 40, AlignLeft, AlignBottom, buffer);
|
|
|
|
|
- snprintf(buffer, 64, "FIX: %d", gps_uart->status.fix_quality);
|
|
|
|
|
- canvas_draw_str_aligned(canvas, 10, 50, AlignLeft, AlignBottom, buffer);
|
|
|
|
|
- snprintf(buffer, 64, "SAT: %d", gps_uart->status.satellites_tracked);
|
|
|
|
|
- canvas_draw_str_aligned(canvas, 10, 60, AlignLeft, AlignBottom, buffer);
|
|
|
|
|
|
|
+ snprintf(buffer, 64, "%f", (double)gps_uart->status.latitude);
|
|
|
|
|
+ canvas_draw_str_aligned(canvas, 32, 18, AlignCenter, AlignBottom, buffer);
|
|
|
|
|
+ snprintf(buffer, 64, "%f", (double)gps_uart->status.longitude);
|
|
|
|
|
+ canvas_draw_str_aligned(canvas, 96, 18, AlignCenter, AlignBottom, buffer);
|
|
|
|
|
+ snprintf(buffer, 64, "%.1f", (double)gps_uart->status.course);
|
|
|
|
|
+ canvas_draw_str_aligned(canvas, 21, 40, AlignCenter, AlignBottom, buffer);
|
|
|
|
|
+ snprintf(buffer, 64, "%.2f kn", (double)gps_uart->status.speed);
|
|
|
|
|
+ canvas_draw_str_aligned(canvas, 64, 40, AlignCenter, AlignBottom, buffer);
|
|
|
|
|
+ snprintf(buffer, 64, "%.1f %c", (double)gps_uart->status.altitude, tolower(gps_uart->status.altitude_units));
|
|
|
|
|
+ canvas_draw_str_aligned(canvas, 107, 40, AlignCenter, AlignBottom, buffer);
|
|
|
|
|
+ snprintf(buffer, 64, "%d", gps_uart->status.satellites_tracked);
|
|
|
|
|
+ canvas_draw_str_aligned(canvas, 32, 62, AlignCenter, AlignBottom, buffer);
|
|
|
|
|
+ snprintf(buffer, 64, "%02d:%02d:%02d UTC", gps_uart->status.time_hours, gps_uart->status.time_minutes,
|
|
|
|
|
+ gps_uart->status.time_seconds);
|
|
|
|
|
+ canvas_draw_str_aligned(canvas, 96, 62, AlignCenter, AlignBottom, buffer);
|
|
|
|
|
|
|
|
release_mutex((ValueMutex*)context, gps_uart);
|
|
release_mutex((ValueMutex*)context, gps_uart);
|
|
|
}
|
|
}
|