Skip to content

Commit

Permalink
firmware: drivers: uart: Code improvements #43
Browse files Browse the repository at this point in the history
  • Loading branch information
miguelboing committed Feb 15, 2023
1 parent c50fad3 commit c1afa9a
Showing 1 changed file with 39 additions and 38 deletions.
77 changes: 39 additions & 38 deletions firmware/drivers/uart/uart.c
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
#include <hal/include/libopencm3/stm32/gpio.h>
#include <hal/include/libopencm3/stm32/usart.h>

#include <libs/containers/queue/queue.h>
#include <libs/containers/queue.h>

#include "uart.h"

Expand All @@ -12,9 +12,9 @@ static queue_t uart_port_3_rx_buffer;
static queue_t uart_port_4_rx_buffer;
static queue_t uart_port_5_rx_buffer;

static inline int uart_send_byte(uart_config_t uart_config, char c);
static inline int uart_send_byte(uart_config_t config, uint16_t c);

static inline int uart_read_byte(uart_config_t uart_config, char c);
static inline int uart_read_byte(uart_config_t config, uint16_t *c);

int uart_init(uart_config_t config)
{
Expand All @@ -34,7 +34,7 @@ int uart_init(uart_config_t config)
rcc_periph_clock_enable(RCC_USART1);
gpio_set_mode(
GPIOA,
GPIO_MODE_OUTPUT_50MHZ,
GPIO_MODE_OUTPUT_50_MHZ,
GPIO_CNF_OUTPUT_ALTFN_PUSHPULL,
GPIO_USART1_TX);
break;
Expand All @@ -60,15 +60,14 @@ int uart_init(uart_config_t config)

}


baud = (uint32_t) config.baud_rate;

switch(config.stop_bits)
{
case UART_SB_0_5: stopbits = USART_STOPBITS_0_5; break;
case UART_SB_1: stopbits = USART_STOPBITS_1; break;
case UART_SB_1_5: stopbits = USART_STOPBITS_1_5; break;
case USART_STOPBITS_2: stopbits = USART_STOPBITS_2; break;
case UART_SB_2: stopbits = USART_STOPBITS_2; break;
default:
//TODO Add error log system.
break;
Expand Down Expand Up @@ -129,7 +128,39 @@ int uart_init(uart_config_t config)
return 0;
}

static inline int uart_send_byte(uart_config_t uart_config, uint16_t c)
int uart_write(uart_config_t uart_config, uint8_t* data, uint16_t len)
{
return -1;
}

int uart_read(uart_config_t uart_config, uint8_t* data, uint16_t len)
{
return -1;
}

int uart_rx_enable(uart_config_t uart_config)
{
return -1;
}


int uart_rx_disable(uart_config_t uart_config)
{
return -1;
}

int uart_read_available(uart_config_t uart_config, uint16_t n_recv_bytes)
{
return -1;
}

int uart_flush(uart_config_t uart_config)
{
return -1;
}


static inline int uart_send_byte(uart_config_t config, uint16_t c)
{
uint32_t usart;
switch(config.port)
Expand All @@ -148,7 +179,7 @@ static inline int uart_send_byte(uart_config_t uart_config, uint16_t c)
return 0;
}

static inline int uart_read_byte(uart_config_t uart_config, uint16_t* c)
static inline int uart_read_byte(uart_config_t config, uint16_t *c)
{
uint32_t usart;
switch(config.port)
Expand All @@ -167,33 +198,3 @@ static inline int uart_read_byte(uart_config_t uart_config, uint16_t* c)
return 0;
}

int uart_write(uart_config_t uart_config, uint8_t* data, uint16_t len)
{
return -1;
}

int uart_read(uart_config_t uart_config, uint8_t* data, uint16_t len)
{
return -1;
}

int uart_rx_enable(uart_config_t uart_config)
{
return -1;
}


int uart_rx_disable(uart_config_t uart_config)
{
return -1;
}

int uart_read_available(uart_config_t uart_config, uint16_t n_recv_bytes)
{
return -1;
}

int uart_flush(uart_config_t uart_config)
{
return -1;
}

0 comments on commit c1afa9a

Please sign in to comment.