RockBLOCK 9704 C Library
Doxygen documentation for the RockBLOCK 9704 C Library.
serial.h
Go to the documentation of this file.
1 #ifndef SERIAL_H
2 #define SERIAL_H
3 
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7 
8 #include <stdio.h>
9 #include <stdint.h>
10 #include <stdbool.h>
11 
12 #if defined(_WIN32)
13 #include <io.h>
14 #define access _access
15 #else
16 #include <unistd.h>
17 #endif
18 
19 #if defined(__linux__) || defined(__APPLE__)
20  #include "serial_presets/serial_linux/serial_linux.h"
21 #elif defined(_WIN32)
22  #include "serial_presets/serial_windows/serial_windows.h"
23 #elif ARDUINO
24  #include "serial_presets/serial_arduino/serial_arduino.h"
25 #endif
26 
27 #define SERIAL_PORT_LENGTH 50U // Should be more than enough, don't want to use PATH_MAX as it will be wasteful
28 
29 // Callback functions which will link to the serial interface
30 typedef bool(*serialInitFunc)();
31 typedef bool(*serialDeInitFunc)();
32 typedef int(*serialReadFunc)(char * bytes, const uint16_t length);
33 typedef int(*serialWriteFunc)(const char * data, const uint16_t length);
34 typedef int(*serialPeekFunc)(void);
35 
36 typedef struct
37 {
43  char serialPort[SERIAL_PORT_LENGTH];
44  uint32_t serialBaud;
46 
48 {
51 };
52 
53 #ifdef __cplusplus
54 }
55 #endif
56 
57 #endif
#define SERIAL_PORT_LENGTH
Definition: serial.h:27
int(* serialWriteFunc)(const char *data, const uint16_t length)
Definition: serial.h:33
int(* serialReadFunc)(char *bytes, const uint16_t length)
Definition: serial.h:32
int(* serialPeekFunc)(void)
Definition: serial.h:34
serialState
Definition: serial.h:48
@ OPEN
Definition: serial.h:50
@ CLOSED
Definition: serial.h:49
bool(* serialDeInitFunc)()
Definition: serial.h:31
bool(* serialInitFunc)()
Definition: serial.h:30
Definition: serial.h:37
serialWriteFunc serialWrite
Definition: serial.h:41
serialPeekFunc serialPeek
Definition: serial.h:42
serialDeInitFunc serialDeInit
Definition: serial.h:39
serialReadFunc serialRead
Definition: serial.h:40
serialInitFunc serialInit
Definition: serial.h:38
uint32_t serialBaud
Definition: serial.h:44