// create initialization structures USART_InitTypeDef USART_InitStructure; GPIO_InitTypeDef GPIO_InitStructure; USART_ClockInitTypeDef USART_ClockInitStructure; NVIC_InitTypeDef NVIC_InitStructure; // define RGB color type typedef struct { uint8_t R, G, B; } ColorTypeDef; ColorTypeDef ColorStructure; // create color type instance uint32_t color = 0x000000; // storage for color value // function prototypes void AssignColor(ColorTypeDef * ColorStructure, uint32_t TargetColor); void ColorPWM(ColorTypeDef * ColorStructure); void InitializePeriph(); uint8_t ascii_to_hex(uint8_t ascii);