WPILibC++ 2023.4.3-108-ge5452e3
|
Enumerations | |
enum | HAL_SerialPort : int32_t { HAL_SerialPort_Onboard = 0 , HAL_SerialPort_MXP = 1 , HAL_SerialPort_USB1 = 2 , HAL_SerialPort_USB2 = 3 } |
Functions | |
HAL_SerialPortHandle | HAL_InitializeSerialPort (HAL_SerialPort port, int32_t *status) |
Initializes a serial port. More... | |
HAL_SerialPortHandle | HAL_InitializeSerialPortDirect (HAL_SerialPort port, const char *portName, int32_t *status) |
Initializes a serial port with a direct name. More... | |
int | HAL_GetSerialFD (HAL_SerialPortHandle handle, int32_t *status) |
Gets the raw serial port file descriptor from a handle. More... | |
void | HAL_SetSerialBaudRate (HAL_SerialPortHandle handle, int32_t baud, int32_t *status) |
Sets the baud rate of a serial port. More... | |
void | HAL_SetSerialDataBits (HAL_SerialPortHandle handle, int32_t bits, int32_t *status) |
Sets the number of data bits on a serial port. More... | |
void | HAL_SetSerialParity (HAL_SerialPortHandle handle, int32_t parity, int32_t *status) |
Sets the number of parity bits on a serial port. More... | |
void | HAL_SetSerialStopBits (HAL_SerialPortHandle handle, int32_t stopBits, int32_t *status) |
Sets the number of stop bits on a serial port. More... | |
void | HAL_SetSerialWriteMode (HAL_SerialPortHandle handle, int32_t mode, int32_t *status) |
Sets the write mode on a serial port. More... | |
void | HAL_SetSerialFlowControl (HAL_SerialPortHandle handle, int32_t flow, int32_t *status) |
Sets the flow control mode of a serial port. More... | |
void | HAL_SetSerialTimeout (HAL_SerialPortHandle handle, double timeout, int32_t *status) |
Sets the minimum serial read timeout of a port. More... | |
void | HAL_EnableSerialTermination (HAL_SerialPortHandle handle, char terminator, int32_t *status) |
Sets the termination character that terminates a read. More... | |
void | HAL_DisableSerialTermination (HAL_SerialPortHandle handle, int32_t *status) |
Disables a termination character for reads. More... | |
void | HAL_SetSerialReadBufferSize (HAL_SerialPortHandle handle, int32_t size, int32_t *status) |
Sets the size of the read buffer. More... | |
void | HAL_SetSerialWriteBufferSize (HAL_SerialPortHandle handle, int32_t size, int32_t *status) |
Sets the size of the write buffer. More... | |
int32_t | HAL_GetSerialBytesReceived (HAL_SerialPortHandle handle, int32_t *status) |
Gets the number of bytes currently in the read buffer. More... | |
int32_t | HAL_ReadSerial (HAL_SerialPortHandle handle, char *buffer, int32_t count, int32_t *status) |
Reads data from the serial port. More... | |
int32_t | HAL_WriteSerial (HAL_SerialPortHandle handle, const char *buffer, int32_t count, int32_t *status) |
Writes data to the serial port. More... | |
void | HAL_FlushSerial (HAL_SerialPortHandle handle, int32_t *status) |
Flushes the serial write buffer out to the port. More... | |
void | HAL_ClearSerial (HAL_SerialPortHandle handle, int32_t *status) |
Clears the receive buffer of the serial port. More... | |
void | HAL_CloseSerial (HAL_SerialPortHandle handle, int32_t *status) |
Closes a serial port. More... | |
enum HAL_SerialPort : int32_t |
void HAL_ClearSerial | ( | HAL_SerialPortHandle | handle, |
int32_t * | status | ||
) |
Clears the receive buffer of the serial port.
[in] | handle | the serial port handle |
[out] | status | the error code, or 0 for success |
void HAL_CloseSerial | ( | HAL_SerialPortHandle | handle, |
int32_t * | status | ||
) |
Closes a serial port.
[in] | handle | the serial port handle to close |
[out] | status | the error code, or 0 for success |
void HAL_DisableSerialTermination | ( | HAL_SerialPortHandle | handle, |
int32_t * | status | ||
) |
Disables a termination character for reads.
[in] | handle | the serial port handle |
[out] | status | the error code, or 0 for success |
void HAL_EnableSerialTermination | ( | HAL_SerialPortHandle | handle, |
char | terminator, | ||
int32_t * | status | ||
) |
Sets the termination character that terminates a read.
By default this is disabled.
[in] | handle | the serial port handle |
[in] | terminator | the termination character to set |
[out] | status | the error code, or 0 for success |
void HAL_FlushSerial | ( | HAL_SerialPortHandle | handle, |
int32_t * | status | ||
) |
Flushes the serial write buffer out to the port.
[in] | handle | the serial port handle |
[out] | status | the error code, or 0 for success |
int32_t HAL_GetSerialBytesReceived | ( | HAL_SerialPortHandle | handle, |
int32_t * | status | ||
) |
Gets the number of bytes currently in the read buffer.
[in] | handle | the serial port handle |
[out] | status | the error code, or 0 for success |
int HAL_GetSerialFD | ( | HAL_SerialPortHandle | handle, |
int32_t * | status | ||
) |
Gets the raw serial port file descriptor from a handle.
[in] | handle | the serial port handle |
[out] | status | the error code, or 0 for success |
HAL_SerialPortHandle HAL_InitializeSerialPort | ( | HAL_SerialPort | port, |
int32_t * | status | ||
) |
Initializes a serial port.
The channels are either the onboard RS232, the MXP UART, or 2 USB ports. The top port is USB1, the bottom port is USB2.
[in] | port | the serial port to initialize |
[out] | status | the error code, or 0 for success |
HAL_SerialPortHandle HAL_InitializeSerialPortDirect | ( | HAL_SerialPort | port, |
const char * | portName, | ||
int32_t * | status | ||
) |
Initializes a serial port with a direct name.
This name is the /dev name for a specific port. Note these are not always consistent between roboRIO reboots.
[in] | port | the serial port to initialize |
[in] | portName | the dev port name |
[out] | status | the error code, or 0 for success |
int32_t HAL_ReadSerial | ( | HAL_SerialPortHandle | handle, |
char * | buffer, | ||
int32_t | count, | ||
int32_t * | status | ||
) |
Reads data from the serial port.
Will wait for either timeout (if set), the termination char (if set), or the count to be full. Whichever one comes first.
[in] | handle | the serial port handle |
[out] | buffer | the buffer in which to store bytes read |
[in] | count | the number of bytes maximum to read |
[out] | status | the error code, or 0 for success |
void HAL_SetSerialBaudRate | ( | HAL_SerialPortHandle | handle, |
int32_t | baud, | ||
int32_t * | status | ||
) |
Sets the baud rate of a serial port.
Any value between 0 and 0xFFFFFFFF may be used. Default is 9600.
[in] | handle | the serial port handle |
[in] | baud | the baud rate to set |
[out] | status | the error code, or 0 for success |
void HAL_SetSerialDataBits | ( | HAL_SerialPortHandle | handle, |
int32_t | bits, | ||
int32_t * | status | ||
) |
Sets the number of data bits on a serial port.
Defaults to 8.
[in] | handle | the serial port handle |
[in] | bits | the number of data bits (5-8) |
[out] | status | the error code, or 0 for success |
void HAL_SetSerialFlowControl | ( | HAL_SerialPortHandle | handle, |
int32_t | flow, | ||
int32_t * | status | ||
) |
Sets the flow control mode of a serial port.
Valid values are: 0: None (default) 1: XON-XOFF 2: RTS-CTS 3: DTR-DSR
[in] | handle | the serial port handle |
[in] | flow | the mode to set (see remarks for valid values) |
[out] | status | the error code, or 0 for success |
void HAL_SetSerialParity | ( | HAL_SerialPortHandle | handle, |
int32_t | parity, | ||
int32_t * | status | ||
) |
Sets the number of parity bits on a serial port.
Valid values are: 0: None (default) 1: Odd 2: Even 3: Mark - Means exists and always 1 4: Space - Means exists and always 0
[in] | handle | the serial port handle |
[in] | parity | the parity bit mode (see remarks for valid values) |
[out] | status | the error code, or 0 for success |
void HAL_SetSerialReadBufferSize | ( | HAL_SerialPortHandle | handle, |
int32_t | size, | ||
int32_t * | status | ||
) |
Sets the size of the read buffer.
[in] | handle | the serial port handle |
[in] | size | the read buffer size |
[out] | status | the error code, or 0 for success |
void HAL_SetSerialStopBits | ( | HAL_SerialPortHandle | handle, |
int32_t | stopBits, | ||
int32_t * | status | ||
) |
Sets the number of stop bits on a serial port.
Valid values are: 10: One stop bit (default) 15: One and a half stop bits 20: Two stop bits
[in] | handle | the serial port handle |
[in] | stopBits | the stop bit value (see remarks for valid values) |
[out] | status | the error code, or 0 for success |
void HAL_SetSerialTimeout | ( | HAL_SerialPortHandle | handle, |
double | timeout, | ||
int32_t * | status | ||
) |
Sets the minimum serial read timeout of a port.
[in] | handle | the serial port handle |
[in] | timeout | the timeout in milliseconds |
[out] | status | the error code, or 0 for success |
void HAL_SetSerialWriteBufferSize | ( | HAL_SerialPortHandle | handle, |
int32_t | size, | ||
int32_t * | status | ||
) |
Sets the size of the write buffer.
[in] | handle | the serial port handle |
[in] | size | the write buffer size |
[out] | status | the error code, or 0 for success |
void HAL_SetSerialWriteMode | ( | HAL_SerialPortHandle | handle, |
int32_t | mode, | ||
int32_t * | status | ||
) |
Sets the write mode on a serial port.
Valid values are: 1: Flush on access 2: Flush when full (default)
[in] | handle | the serial port handle |
[in] | mode | the mode to set (see remarks for valid values) |
[out] | status | the error code, or 0 for success |
int32_t HAL_WriteSerial | ( | HAL_SerialPortHandle | handle, |
const char * | buffer, | ||
int32_t | count, | ||
int32_t * | status | ||
) |
Writes data to the serial port.
[in] | handle | the serial port handle |
[in] | buffer | the buffer to write |
[in] | count | the number of bytes to write from the buffer |
[out] | status | the error code, or 0 for success |