zhyinch
2021-10-28 942d685e55e3a58b6bcd7d0158765e9648b9373a
Ô´Âë/ºËÐİå/Src/OnChipDevices/Usart.h
@@ -3,16 +3,56 @@
#define __USART_H__
#include "stm32f10x.h"
#define EXUART_USE_TXDMA
#define EU_485_PIN            GPIO_Pin_7
#define EU_485_GPIO            GPIOB
#define OUT485_ENABLE       GPIO_WriteBit(EU_485_GPIO, EU_485_PIN, Bit_SET);
#define OUT485_DISABLE       GPIO_WriteBit(EU_485_GPIO, EU_485_PIN, Bit_RESET);
#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      921600
#define EUART_RX_DMA_CH          DMA1_Channel5
#define EUART_TX_DMA_CH         DMA1_Channel4
void Usart_Init(void);
#define EUART_DMA DMA1
#define EUART_TX_DMA_IT_TC DMA1_IT_TC4
#define EUART_TX_FRM_SIZE      25            //发送队列中的最大帧数
#define EUART_TX_FRMBUF_SIZE   110            //发送队列每帧缓存大小
#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);
//////////////////////////////////////////////////////////
#define EXT_UART2            USART2
#define UART2_RX_DMA_CH          DMA1_Channel6
#endif