HALFRED  0.4.0
hal_ioserial.h
Go to the documentation of this file.
1 
10 #ifndef HAL_IOSERIAL_H
11 #define HAL_IOSERIAL_H
12 
19 
20 #include <stdbool.h>
21 
25 typedef enum {
37 
41 typedef enum {
53 
57 typedef enum {
65 
69 typedef enum {
72  IOSERIAL_HANDSHAKING_RTS_CTS
74 
81 unsigned int IOSERIAL_Enumerate(void);
82 
92 const char* IOSERIAL_GetEnumeratedDeviceName(unsigned int index);
93 
108 IODevice IOSERIAL_Create(const char* name);
109 
118 void IOSERIAL_Destroy(IODevice serial);
119 
127 HALRESULT IOSERIAL_SetBaudrate(IODevice serial, uint32_t baudrate);
128 
135 uint32_t IOSERIAL_GetBaudrate(IODevice serial);
136 
147 
158 
167 
176 
184 
192 
200 HALRESULT IOSERIAL_SetRTS(IODevice serial, bool rts);
201 
209 bool IOSERIAL_GetRTS(IODevice serial);
210 
218 
226 
234 HALRESULT IOSERIAL_SetCTS(IODevice serial, bool cts);
235 
243 bool IOSERIAL_GetCTS(IODevice serial);
244 
247 #endif /* HAL_IOSERIAL_H */
HALRESULT IOSERIAL_SetHandshaking(IODevice serial, IOSERIAL_Handshaking handshaking)
Definition: hal_ioserial.c:120
2 stop bits
Definition: hal_ioserial.h:63
bool IOSERIAL_GetRTS(IODevice serial)
Definition: hal_ioserial.c:200
HALRESULT
Definition: hal_defs.h:16
7 data bits
Definition: hal_ioserial.h:33
bool IOSERIAL_GetCTS(IODevice serial)
Definition: hal_ioserial.c:264
space parity
Definition: hal_ioserial.h:51
HALRESULT IOSERIAL_SetBaudrate(IODevice serial, uint32_t baudrate)
Definition: hal_ioserial.c:89
HALRESULT IOSERIAL_EnableRTS(IODevice serial)
Definition: hal_ioserial.c:152
odd parity
Definition: hal_ioserial.h:45
Definition: hali_iodevice.h:44
6 data bits
Definition: hal_ioserial.h:31
1.5 stop bits
Definition: hal_ioserial.h:61
5 data bits
Definition: hal_ioserial.h:29
IOSERIAL_Handshaking IOSERIAL_GetHandshaking(IODevice serial)
Definition: hal_ioserial.c:136
even parity
Definition: hal_ioserial.h:47
HALRESULT IOSERIAL_DisableRTS(IODevice serial)
Definition: hal_ioserial.c:168
void IOSERIAL_Destroy(IODevice serial)
Definition: hal_ioserial.c:49
HALRESULT IOSERIAL_EnableCTS(IODevice serial)
Definition: hal_ioserial.c:216
IOSERIAL_NumberOfDataBits
Definition: hal_ioserial.h:25
IOSERIAL_NumberOfStopBits
Definition: hal_ioserial.h:57
Handshaking disabled.
Definition: hal_ioserial.h:71
mark parity
Definition: hal_ioserial.h:49
IOSERIAL_Parity
Definition: hal_ioserial.h:41
unsigned int IOSERIAL_Enumerate(void)
Definition: hal_ioserial.c:22
1 stop bit
Definition: hal_ioserial.h:59
HALRESULT IOSERIAL_SetFrameFormat(IODevice serial, IOSERIAL_NumberOfDataBits data_bits, IOSERIAL_Parity parity, IOSERIAL_NumberOfStopBits stop)
Definition: hal_ioserial.c:57
uint32_t IOSERIAL_GetBaudrate(IODevice serial)
Definition: hal_ioserial.c:105
HALRESULT IOSERIAL_DisableCTS(IODevice serial)
Definition: hal_ioserial.c:232
8 data bits (default)
Definition: hal_ioserial.h:27
IODevice IOSERIAL_Create(const char *name)
Definition: hal_ioserial.c:40
IOSERIAL_Handshaking
Definition: hal_ioserial.h:69
HALRESULT IOSERIAL_GetFrameFormat(IODevice serial, IOSERIAL_NumberOfDataBits *data_bits, IOSERIAL_Parity *parity, IOSERIAL_NumberOfStopBits *stop)
Definition: hal_ioserial.c:73
HALRESULT IOSERIAL_SetRTS(IODevice serial, bool rts)
Definition: hal_ioserial.c:184
const char * IOSERIAL_GetEnumeratedDeviceName(unsigned int index)
Definition: hal_ioserial.c:31
HALRESULT IOSERIAL_SetCTS(IODevice serial, bool cts)
Definition: hal_ioserial.c:248
9 data bits
Definition: hal_ioserial.h:35
no parity
Definition: hal_ioserial.h:43