1
0
mirror of https://github.com/peterantypas/maiana.git synced 2025-05-15 15:00:08 -07:00
2021-11-14 19:24:21 -08:00

49 lines
728 B
C

/*
* printf2.c
*
* Created on: Mar 1, 2016
* Author: peter
*/
#include "stm32l4xx_hal.h"
#include <stdio.h>
#include <stdarg.h>
#include <stdlib.h>
#include "config.h"
void USART_putc(USART_TypeDef* USARTx, char c)
{
while ( !(USARTx->ISR & USART_ISR_TXE) )
;
USARTx->TDR = c;
}
void USART_puts(USART_TypeDef* USARTx, const char *s)
{
for ( int i = 0; s[i] != 0; ++i )
USART_putc(USARTx, s[i]);
}
char __buffer[128];
#if ENABLE_VAR_ARGS
void printf2(const char *format, ...)
{
va_list list;
va_start(list, format);
vsnprintf(__buffer, sizeof __buffer, format, list);
va_end(list);
USART_puts(USART1, __buffer);
}
#else
void printf2(const char *s)
{
USART_puts(USART1, s);
}
#endif