#include "project.h" static void cmd_dispatch() { uint8_t c; while (!ring_read_byte(&rx1_ring,&c)) { printf("KEY> %c\r\n",c); switch(c) { case 'R': gps_reset (); break; case 'A': gps_almanac (); break; } } } static void board_setup (void) { rcc_clock_setup_hse_3v3 (&hse_8mhz_3v3[CLOCK_3V3_168MHZ]); rcc_periph_clock_enable (RCC_SYSCFG); rcc_periph_clock_enable (RCC_GPIOA); rcc_periph_clock_enable (RCC_GPIOB); rcc_periph_clock_enable (RCC_GPIOC); rcc_periph_clock_enable (RCC_GPIOD); rcc_periph_clock_enable (RCC_USART1); rcc_periph_clock_enable (RCC_USART3); rcc_periph_clock_enable (RCC_SYSCFG); nvic_set_priority (NVIC_EXTI2_IRQ, 0); nvic_set_priority (NVIC_EXTI0_IRQ, 1); nvic_set_priority (NVIC_EXTI15_10_IRQ, 2); nvic_set_priority (NVIC_USART1_IRQ, 3); nvic_set_priority (NVIC_ETH_IRQ, 4); nvic_set_priority (NVIC_SYSTICK_IRQ, 5) ; } static void system_init (void) { board_setup(); led_init(); ticker_init(); usart_init(); msf_init(); dcf77_init(); printf ("LWIP\r\n"); start_lwip(); printf ("STETH\r\n"); steth_init(); //gps_init(); } int main (void) { system_init(); printf ("Boot\r\n"); while (1) { // msf_dispatch(); // dcf77_dispatch(); //gps_dispatch(); cmd_dispatch(); dispatch_lwip(); steth_dispatch(); } return 0; }