+ // Hold GPS in reset while configuring its UART.
+ gpio::clear(gpio::GPIOB, 1);
+ systick::delay_ms(50);
+ uart::configure(uart::UART0);
+ systick::delay_ms(50);
+ gpio::set(gpio::GPIOB, 1);
+
+ nvic::enable_irq(12); // UART0
+
+ let mut gps = gps::Gps::new();
+
+ let mut gps_has_fix = false;
+ let mut gps_has_fix_ticks = 0;
+
+ let mut heart_icon_timer = Timer::new(1000);
+