1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- //==================================================================
- //
- // Filename: app_uart2.h
- // Description:
- //
- //------------------------------------------------------------------
- //
- // version:
- // data: 20:43pm, 07.Jan.2014, written by Charlie
- // Description:
- //
- //------------------------------------------------------------------
- //==================================================================
- #ifndef _MAPP_UART1_H_
- #define _MAPP_UART1_H_
- /*------------------------------------------------------------------------------
- * I N C L U D E
- *------------------------------------------------------------------------------*/
- #include "stm32f0xx.h"
- #include "general.h"
- /*------------------------------------------------------------------------------
- * D E F I N E
- *------------------------------------------------------------------------------*/
- #define COM_NO_ERR 0 /* Function call was successful */
- #define COM_BAD_CH 1 /* Invalid communications port channel */
- #define COM_RX_EMPTY 2 /* Rx buffer is empty, no character available */
- #define COM_TX_FULL 3 /* Tx buffer is full, could not deposit character */
- #define COM_TX_EMPTY 4 /* If the Tx buffer is empty. */
- #define COM_RX_TIMEOUT 5 /* If a timeout occurred while waiting for a character*/
- #define COM_TX_TIMEOUT 6 /* If a timeout occurred while waiting to send a char.*/
- /*----------------------
- ** COM2 buffer size
- -----------------------*/
- #define UART1_RX_PAGE 20
- #define UART1_TX_PAGE 20
- #define UART1_RX_BUF_SIZE 32 /* Number of characters in Rx ring buffer */
- #define UART1_RX_BUF_MAXSIZE 40 /* Number of characters in Rx ring buffer */
- #define UART1_TX_BUF_SIZE 250 /* Number of characters in Tx ring buffer */
- /*------------------------------------------------------------------------------
- * S T R U C T
- *------------------------------------------------------------------------------*/
- /*--- USART1 communicate data struct ---*/
- typedef struct {
- U08 RxInPag; /* Number of page for next Rx In frame */
- U08 RxOutPag; /* Number of page for next Rx Out frame */
- U08 RxLen; /* Frame length */
- U08 RxCnt; /* Max number of Rx characters for a data frame */
- U08 BufRx[UART1_RX_PAGE][UART1_RX_BUF_SIZE]; /* Ring buffer character storage (Rx) */
-
- U08 TxCtr; /* Number of characters in the Tx ring buffer */
- U08 TxEnque; /* Input data index to tx buffer */
- U08 TxDeque; /* Output data index from tx buffer */
- U08 BufTx[UART1_TX_BUF_SIZE]; /* Ring buffer character storage (Tx) */
- } T_COM_UART1;
- /*------------------------------------------------------------------------------
- * E X T E R N
- *------------------------------------------------------------------------------*/
- extern T_COM_UART1 s_tUart1Cfg;
- extern T_COM_UART1 s_tUart2Cfg;
- /*------------------------------------------------------------------------------
- * P R O T O T Y P E
- *------------------------------------------------------------------------------*/
- void Uart1VarInit(void);
- void Uart1CfgInit(void);
- void Uart2CfgInit(void);
- void Uart1CfgDisable(void);
- void Uart1ISRHandler(void);
- void Uart1GetChar(U08 *rbuf ,U16 to, U08 *err);
- U08 Uart1PutChar(U08 *c, U08 len);
- void Uart2VarInit(void);
- void Uart2CfgDisable(void);
- void Uart2ISRHandler(void);
- void Uart2GetChar(U08 *rbuf ,U16 to, U08 *err);
- U08 Uart2PutChar(U08 *c, U08 len);
- #endif /* _MAPP_UART1_H_ */
- /*------------------------------- E O F ----------------------------------------*/
|