// // 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" int main(void) { sysclock_init(); hal_init(); gpio_init(); ssd1306_init(); ssd1306_drawlogo(); ssd1306_clearscreen(); // 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); int32_t battery_adc_count = 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 > 1000) { char buffer[256]; snprintf(buffer, 256, "My Variable: %d", battery_adc_count); ssd1306_drawstring(buffer, 2, 0); // HAL_GPIO_TogglePin(LED_RED); battery_adc_count++; last_blink_time = HAL_GetTick(); } watchdog_feed(); } }