/******************************************************************************** * File Name: Serial.h * Function Describe: Header file for Serial.c * Explain: * Writer: ShiLiangWen * Date: 2015-1-30 *******************************************************************************/ #ifndef _Serial_H__ #define _Serial_H__ /***************************************************************************/ #include #define COM_SEL_MCU 0 #define COM_SEL_GPS 1 #define COM_SEL_MODEM 2 typedef enum {INF = 0, DEBUG =1} TRACE_TYPE; #define UART1_TX_USE_DMA 0 #define UART2_TX_USE_DMA 0 #define RS485_DIR_PIN GPIO_Pin_8 #define RS485_DIR_PORT GPIOA #define RS485_DIR_HIGH RS485_DIR_PORT->BSRR = RS485_DIR_PIN #define RS485_DIR_LOW RS485_DIR_PORT->BRR = RS485_DIR_PIN #if UART1_TX_USE_DMA==0 #define UART1_TX_BUFFER_SIZE 200 //UART1 USE FOR PC #else #define UART1_TX_BUFFER_SIZE 200 //UART1 USE FOR PC #endif #if UART2_TX_USE_DMA==0 #define UART2_TX_BUFFER_SIZE 260 //UART1 USE FOR PC #else #define UART2_TX_BUFFER_SIZE 260 //UART1 USE FOR PC #endif #define UART1_RX_BUFFER_SIZE 200 #define UART2_RX_BUFFER_SIZE 1700 //1500 extern unsigned short rx1_ct; extern unsigned char RxBuffer1[UART1_RX_BUFFER_SIZE]; extern unsigned char TxBuffer1[UART1_TX_BUFFER_SIZE]; extern unsigned char g_usUart1RecvLen; extern unsigned char RxBuffer2[UART2_RX_BUFFER_SIZE]; extern unsigned char TxBuffer2[UART2_TX_BUFFER_SIZE]; //extern unsigned char DMATxBuffer2[]; //extern unsigned char g_ucUart2Received; extern unsigned char g_ucUARTSel; extern unsigned char g_ucUART1RxMode; extern unsigned char recevstatue; void Uart1Init(void); void Uart2Init(void); void Uart3Init(void); void UART1RxTxISRHandler(void);//串口1中断中回调此函数 void UART2RxTxISRHandler(void);//串口2中断中回调此函数 extern unsigned char g_ucDebugLog;//0--不打印DEBUG信息 1--打印DEBUG信息 void SlwTrace(TRACE_TYPE type,char *buf); void ComSelect(unsigned char sel); void Uart1Send(char *txbuf,int len); void Uart2Send(char *txbuf,int len); void Uart1RxEnable(int en); void Uart1RecvProcess(void); void Uart2RecvProcess(void); //通过DMA发送 void USART1_Send(char *pbuffer, unsigned short size); void USART1_SendOK_IQ(void); void USART1_SendWaitCompleted(void); extern unsigned short g_usUSART_WordLength; /***************************************************************************/ #endif