/* * Copyright 2024 Birte Kristina Friesel * * SPDX-License-Identifier: BSD-2-Clause */ #include "driver/stdout.h" #include #include #include void StandardOutput::setup() { rcc_periph_clock_enable(RCC_USART3); gpio_mode_setup(GPIOD, GPIO_MODE_AF, GPIO_PUPD_NONE, GPIO8); gpio_set_af(GPIOD, GPIO_AF7, GPIO8); usart_set_baudrate(USART3, 115200); usart_set_databits(USART3, 8); usart_set_stopbits(USART3, USART_STOPBITS_1); usart_set_mode(USART3, USART_MODE_TX); usart_set_parity(USART3, USART_PARITY_NONE); usart_set_flow_control(USART3, USART_FLOWCONTROL_NONE); usart_enable(USART3); } void StandardOutput::put(char c) { usart_send_blocking(USART3, c); if (c == '\n') { put('\r'); } } StandardOutput kout;