📄 uart.h
字号:
/******************************************************************************
*
* Function Name: uart1Putch()
*
* Description:
* This function puts a character into the UART output queue for
* transmission.
*
* Calling Sequence:
* character to be transmitted
*
* Returns:
* ch on success, -1 on error (queue full)
*
*****************************************************************************/
int uart1Putch(int ch);
// same but blocking when no space available (mthomas)
int uart1Putch_block(int ch);
/******************************************************************************
*
* Function Name: uart1Space()
*
* Description:
* This function gets the available space in the transmit queue
*
* Calling Sequence:
* void
*
* Returns:
* available space in the transmit queue
*
*****************************************************************************/
uint16_t uart1Space(void);
/******************************************************************************
*
* Function Name: uart1Puts()
*
* Description:
* This function writes a NULL terminated 'string' to the UART output
* queue, returning a pointer to the next character to be written.
*
* Calling Sequence:
* address of the string
*
* Returns:
* a pointer to the next character to be written
* (\0 if full string is written)
*
*****************************************************************************/
const char *uart1Puts(const char *string);
// same but blocking when no space available (mthomas)
const char *uart1Puts_block(const char *string);
/******************************************************************************
*
* Function Name: uart1Write()
*
* Description:
* This function writes 'count' characters from 'buffer' to the UART
* output queue.
*
* Calling Sequence:
*
*
* Returns:
* 0 on success, -1 if insufficient room, -2 on error
* NOTE: if insufficient room, no characters are written.
*
*****************************************************************************/
int uart1Write(const char *buffer, uint16_t count);
/******************************************************************************
*
* Function Name: uart1TxEmpty()
*
* Description:
* This function returns the status of the UART transmit data
* registers.
*
* Calling Sequence:
* void
*
* Returns:
* FALSE - either the tx holding or shift register is not empty
* !FALSE - if both the tx holding & shift registers are empty
*
*****************************************************************************/
int uart1TxEmpty(void);
/******************************************************************************
*
* Function Name: uart1TxFlush()
*
* Description:
* This function removes all characters from the UART transmit queue
* (without transmitting them).
*
* Calling Sequence:
* void
*
* Returns:
* void
*
*****************************************************************************/
void uart1TxFlush(void);
/******************************************************************************
*
* Function Name: uart1Getch()
*
* Description:
* This function gets a character from the UART receive queue
*
* Calling Sequence:
* void
*
* Returns:
* character on success, -1 if no character is available
*
*****************************************************************************/
int uart1Getch(void);
#endif
///////////////////////////////////////////////////////////////////////////////
#if UART3_SUPPORT
#ifdef UART3_INT_MODE
#ifndef UART3_TX_INT_MODE
#define UART3_TX_INT_MODE
#endif // UART0_TX_INT_MODE
#ifndef UART3_RX_INT_MODE
#define UART3_RX_INT_MODE
#endif // UART0_RX_INT_MODE
#endif // UART0_INT_MODE
/******************************************************************************
*
* Function Name: uart0Init()
*
* Description:
* This function initializes the UART for async mode
*
* Calling Sequence:
* baudrate divisor - use UART0_BAUD macro
* mode - see typical modes (above)
* fmode - see typical fmodes (above)
*
* Returns:
* void
*
* NOTE: uart0Init(UART_BAUD(9600), UART_8N1, UART_FIFO_8);
*
*****************************************************************************/
void uart3Init(uint16_t baud, uint8_t mode, uint8_t fmode);
/******************************************************************************
*
* Function Name: uart0Putch()
*
* Description:
* This function puts a character into the UART output queue for
* transmission.
*
* Calling Sequence:
* character to be transmitted
*
* Returns:
* ch on success, -1 on error (queue full)
*
*****************************************************************************/
int uart3Putch(int ch);
// same but blocking when no space available (mthomas)
int uart3Putch_block(int ch);
/******************************************************************************
*
* Function Name: uart0Space()
*
* Description:
* This function gets the available space in the transmit queue
*
* Calling Sequence:
* void
*
* Returns:
* available space in the transmit queue
*
*****************************************************************************/
uint16_t uart3Space(void);
/******************************************************************************
*
* Function Name: uart0Puts()
*
* Description:
* This function writes a NULL terminated 'string' to the UART output
* queue, returning a pointer to the next character to be written.
*
* Calling Sequence:
* address of the string
*
* Returns:
* a pointer to the next character to be written
* (\0 if full string is written)
*
*****************************************************************************/
const char *uart3Puts(const char *string);
// same but blocking when no space available (mthomas)
const char *uart3Puts_block(const char *string);
/******************************************************************************
*
* Function Name: uart0Write()
*
* Description:
* This function writes 'count' characters from 'buffer' to the UART
* output queue.
*
* Calling Sequence:
*
*
* Returns:
* 0 on success, -1 if insufficient room, -2 on error
* NOTE: if insufficient room, no characters are written.
*
*****************************************************************************/
int uart3Write(const char *buffer, uint16_t count);
/******************************************************************************
*
* Function Name: uart0TxEmpty()
*
* Description:
* This function returns the status of the UART transmit data
* registers.
*
* Calling Sequence:
* void
*
* Returns:
* FALSE - either the tx holding or shift register is not empty
* !FALSE - if both the tx holding & shift registers are empty
*
*****************************************************************************/
int uart3TxEmpty(void);
/******************************************************************************
*
* Function Name: uart0TxFlush()
*
* Description:
* This function removes all characters from the UART transmit queue
* (without transmitting them).
*
* Calling Sequence:
* void
*
* Returns:
* void
*
*****************************************************************************/
void uart3TxFlush(void);
/******************************************************************************
*
* Function Name: uart0Getch()
*
* Description:
* This function gets a character from the UART receive queue
*
* Calling Sequence:
* void
*
* Returns:
* character on success, -1 if no character is available
*
*****************************************************************************/
int uart3Getch(void);
#endif
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -