From 0683cdecbcb9a1108de4c2c97ab0291fb4d9e16b Mon Sep 17 00:00:00 2001 From: zhyinch <zhyinch@gmail.com> Date: 星期四, 20 六月 2019 16:12:43 +0800 Subject: [PATCH] 增加PA模式 --- 源码/核心板/Src/OnChipDevices/Usart.h | 44 ++++++++++++++++++++++++++++++++++++++------ 1 files changed, 38 insertions(+), 6 deletions(-) diff --git "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/OnChipDevices/Usart.h" "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/OnChipDevices/Usart.h" index 13d3a56..0cb0059 100644 --- "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/OnChipDevices/Usart.h" +++ "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/OnChipDevices/Usart.h" @@ -4,15 +4,47 @@ #include "stm32f10x.h" -#define USART_TX_pin GPIO_Pin_9 -#define USART_RX_pin GPIO_Pin_10 -#define USART_GPIO GPIOA -#define EXT_USART USART1 +//#define UART_GPIO_REMAP_ENABLE +#ifdef UART_GPIO_REMAP_ENABLE + #define UART_GPIO_REMAP GPIO_Remap_USART1 + #define EU_RCC_GPIO RCC_APB2Periph_GPIOB + #define EU_TX_PIN GPIO_Pin_6 + #define EU_RX_PIN GPIO_Pin_7 + #define EU_RX_GPIO GPIOB + #define EU_TX_GPIO GPIOB +#else + #define EU_RCC_GPIO RCC_APB2Periph_GPIOA + #define EU_TX_PIN GPIO_Pin_9 + #define EU_RX_PIN GPIO_Pin_10 + #define EU_RX_GPIO GPIOA + #define EU_TX_GPIO GPIOA +#endif -#define BAUD_RATE 115200 +#define EXUART_BAUD_RADE 115200 +#define EUART_RX_DMA_CH DMA1_Channel5 +#define EUART_TX_DMA_CH DMA1_Channel4 -void Usart_Init(void); +#define EUART_TX_FRM_SIZE 4 //发送队列中的最大帧数 +#define EUART_TX_FRMBUF_SIZE 200 //发送队列每帧缓存大小 +#define EUART_RX_BUF_SIZE 200 //接收缓存大小 + +#define EXT_UART USART1 +#define EXT_UART_RCC RCC_APB2Periph_USART1 + +typedef struct _EUART_Frame { //数据发送帧队列结构体 + int32_t len; //帧长度 + uint8_t buf[EUART_TX_FRMBUF_SIZE]; //帧数据 +} EUART_Frame; + +void Uart1_Init(void); + +void UART_CheckReceive(void); +void UART_CheckSend(void); +void UART_PushFrame(uint8_t* pdata, int32_t data_len); +void UART_PopFrame(void); +extern void (*Usart1ParseDataCallback)(uint8_t); + #endif -- Gitblit v1.9.3