|
#ifndef __USART_H__
|
#define __USART_H__
|
|
#include "main.h"
|
//#define BAUDRATE_19200
|
|
#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 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
|
|
#ifdef BAUDRATE_19200
|
#define EXUART_BAUD_RADE 19200
|
#else
|
#define EXUART_BAUD_RADE 115200
|
#endif
|
|
#define EUART_RX_DMA_CH DMA1_Channel3
|
#define EUART_TX_DMA_CH DMA1_Channel2
|
|
#define EUART_TX_FRM_SIZE 14 //·¢ËͶÓÁÐÖеÄ×î´óÖ¡Êý
|
#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);
|
extern uint8_t m_EUART_DMA_RXBuf[EUART_RX_BUF_SIZE];
|
|
#endif
|