// // STM32F103 Template Firmware // Copyright 2016 SeaLandAire Technologies // Author(s): Ethan Zonca // #include "stm32f3xx_hal.h" #include "config.h" #include "watchdog.h" #include "system.h" #include "gpio.h" #include "error.h" #include "flash.h" #include "ssd1306.h" #include "stdio.h" #include "adc.h" #include "dma.h" int main(void) { sysclock_init(); hal_init(); gpio_init(); ssd1306_init(); ssd1306_drawlogo(); ssd1306_clearscreen(); adc_init(); // ssd1306_drawstring(const char *dataPtr, unsigned char row, unsigned char xPos) ssd1306_drawstring("[ ProtoFuse ]", 0, 0); ssd1306_drawstring("HW v1.0 SW v0.1", 1, 0); uint16_t temp_counter = 0; flash_init(); watchdog_init(); // Software timers uint32_t last_blink_time = HAL_GetTick(); while (1) { // Grab and transmit data if(HAL_GetTick() - last_blink_time > 100) { char buffer[256]; // added stdio.h to fix implicit declaration error // changed battery_adc_count from int32_t to int snprintf(buffer, 256, "Counter: %u", temp_counter); ssd1306_drawstring(buffer, 2, 0); snprintf(buffer, 256, "i count: %u", get_viout_counts()); ssd1306_drawstring(buffer, 3, 0); // HAL_GPIO_TogglePin(LED_RED); temp_counter++; last_blink_time = HAL_GetTick(); } watchdog_feed(); } }