From 33a15696519e161cd823baaf4214d1ed452a410a Mon Sep 17 00:00:00 2001 From: Josh Rahm Date: Wed, 2 Jan 2019 23:08:37 -0700 Subject: Add primitive printf functionality to the USART. --- 03-refactor/src/usart.c | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to '03-refactor/src/usart.c') diff --git a/03-refactor/src/usart.c b/03-refactor/src/usart.c index fc58467..a64ad8b 100644 --- a/03-refactor/src/usart.c +++ b/03-refactor/src/usart.c @@ -1,5 +1,6 @@ #include "usart.h" #include "delay.h" +#include "printf.h" void set_usart1_clock_src(__IO rcc_t* rcc, usart_clk_src_t usart_clk_src) { @@ -78,3 +79,13 @@ void usart_transmit_str(__IO usart_t* usart, const char* str) usart_transmit_byte(usart, *(str ++)); } } + +void usart_printf(__IO usart_t* usart, const char* fmt, ...) +{ + printf_callback_t callback = (printf_callback_t) usart_transmit_byte; + volatile void* closure = usart; + va_list ap; + va_start(ap, fmt); + printf_format(fmt, callback, closure, ap); + va_end(ap); +} -- cgit