27 #include <libopencm3/stm32/gpio.h> 28 #include <libopencm3/stm32/rcc.h> 29 #include <libopencm3/stm32/usart.h> 44 #define BUSVOODOO_UART_USART 3 48 static const struct busvoodoo_uart_generic_specific_t busvoodoo_uart_generic_uart = { 79 bool complete =
false;
88 const char* pinout_io[10] = {
"GND",
"5V",
"3V3",
"LV",
"Rx",
"Tx",
"RTS",
"CTS", NULL, NULL};
93 const char* pinout_rscan[5] = {
"HV", NULL, NULL, NULL, NULL};
113 .description =
"Universal Asynchronous Receiver-Transmitter",
#define USART_TX_PORT(x)
get port for USART transmit pin based on USART identifier
#define RCC_USART(x)
get RCC for USART based on USART identifier
bool busvoodoo_uart_generic_setup(char **prefix, const char *line)
setup generic UART mode
BusVoodoo global definitions and methods (API)
void busvoodoo_oled_text_pinout(const char *pins[10], bool io_connector)
draw pin names on bottom (blue) part in display buffer
const char * name
name of the mode (i.e.
#define RCC_USART_PORT(x)
get RCC for USART port based on USART identifier
void busvoodoo_oled_update(void)
update OLED display RAM with current display buffer
const char * busvoodoo_global_pinout_rscan[5]
RS/CAN connector pinout.
global definitions and methods (API)
bool busvoodoo_full
is the BusVoodoo board fully populated (with HV voltage regulator, RS-232, RS-485, CAN transceiver on the back side)
static bool busvoodoo_uart_setup(char **prefix, const char *line)
setup UART mode
void busvoodoo_led_blue_off(void)
switch off blue LED
#define USART_RX_PIN(x)
get pin for USART receive pin based on USART identifier
#define USART_TX_PIN(x)
get pin for USART transmit pin based on USART identifier
#define USART_CTS_PORT(x)
get port for USART CTS pin based on USART identifier
#define BUSVOODOO_UART_USART
USART peripheral.
#define RST_USART(x)
get RST for USART based on USART identifier
const struct busvoodoo_mode_t busvoodoo_uart_mode
UART mode interface definition.
#define USART(x)
get USART based on USART identifier
void busvoodoo_uart_generic_exit(void)
exit genetic UART mode
const char * busvoodoo_global_pinout_io[10]
I/O connector pinout.
BusVoodoo UART mode (API)
#define busvoodoo_uart_generic_commands_nb
number of commands supported by the generic UART mode
#define USART_RX_PORT(x)
get port for USART receive pin based on USART identifier
bool busvoodoo_uart_generic_configure(const struct busvoodoo_uart_generic_specific_t *conf)
provide the generic USART with mode specific information
#define USART_RTS_PIN(x)
get pin for USART RTS pin based on USART identifier
#define USART_CTS_PIN(x)
get pin for USART CTS pin based on USART identifier
BusVoodoo generic UART mode (API)
printing utilities to replace the large printf from the standard library (API)
void busvoodoo_oled_text_left(char *text)
draw mode text on top (yellow) left side in display buffer
const struct menu_command_t busvoodoo_uart_generic_commands[busvoodoo_uart_generic_commands_nb]
commands supported by the generic UART mode
static const struct busvoodoo_uart_generic_specific_t busvoodoo_uart_generic_uart
UART specific methods that will be called by the generic methods.
#define LENGTH(x)
get the length of an array
library to show BusVoodoo mode information on SSD1306 OLED display: name, activity, pinout (API)
static void busvoodoo_uart_exit(void)
exit UART mode
BusVoodoo mode interface.
#define USART_RTS_PORT(x)
get port for USART RTS pin based on USART identifier
library for enhanced USART communication (API)