添加RS485支持

This commit is contained in:
yelvlab 2024-11-28 17:23:59 +08:00
parent 5936f69ec4
commit 70e3e162ae
3 changed files with 12 additions and 6 deletions

View File

@ -34,12 +34,14 @@
#define USART_RCU RCU_USART0
#define USART_GPIO_RCU RCU_GPIOA
#define USARET_GPIO_PORT GPIOA
#define USART_GPIO_PORT GPIOA
#define USART_TX_PIN GPIO_PIN_2
#define USART_RX_PIN GPIO_PIN_3
#define USART0_PHY USART0
#define USART_BAUDRATE 115200U
#define USART_EN_PIN GPIO_PIN_4
#define US_TRAN_GPIO_RCU RCU_GPIOB
#define US_TRAN_GPIO_PORT GPIOB
#define US_TRAN_PIN GPIO_PIN_1

View File

@ -1,7 +1,7 @@
# 连接cmsis-dap喝粥
; interface cmsis-dap
source [find interface/cmsis-dap.cfg]
; source [find interface/jlink.cfg]
# 选择SWD
transport select swd

View File

@ -39,11 +39,15 @@ void usart_config(void)
rcu_periph_clock_enable(USART_GPIO_RCU);
rcu_periph_clock_enable(USART_RCU);
gpio_af_set(USARET_GPIO_PORT, GPIO_AF_1, GPIO_PIN_2 | GPIO_PIN_3);
gpio_af_set(USART_GPIO_PORT, GPIO_AF_1, GPIO_PIN_2 | GPIO_PIN_3);
/* configure USART Tx as alternate function push-pull */
gpio_mode_set(USARET_GPIO_PORT, GPIO_MODE_AF, GPIO_PUPD_PULLUP, USART_TX_PIN | USART_RX_PIN);
gpio_output_options_set(USARET_GPIO_PORT, GPIO_OTYPE_PP, GPIO_OSPEED_10MHZ, USART_TX_PIN | USART_RX_PIN);
/* configure USART Tx&Rx as alternate function push-pull */
gpio_mode_set(USART_GPIO_PORT, GPIO_MODE_AF, GPIO_PUPD_PULLUP, USART_TX_PIN | USART_RX_PIN);
gpio_output_options_set(USART_GPIO_PORT, GPIO_OTYPE_PP, GPIO_OSPEED_10MHZ, USART_TX_PIN | USART_RX_PIN);
/* configure RS485 EN Pin */
gpio_mode_set(USART_GPIO_PORT, GPIO_MODE_OUTPUT, GPIO_PUPD_PULLUP, USART_EN_PIN);
gpio_output_options_set(USART_GPIO_PORT, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ, USART_EN_PIN);
/* USART configure */
usart_deinit(USART0_PHY);