ACKme Logo WiConnect Host Library- API Reference Guide
 
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Groups Pages
WiconnectSerial.h
1 
29 #pragma once
30 
31 #include "api/WiconnectTypes.h"
32 
33 
34 namespace wiconnect
35 {
36 
42 class WiconnectSerial WICONNECT_SERIAL_BASE_CLASS
43 {
44 public:
45  WiconnectSerial(const SerialConfig &config, Wiconnect *wiconnect = NULL);
46  virtual ~WiconnectSerial();
47 
48  void initialize(void);
49  void flush(void);
50  int write(const void *data, int bytesToWrite, TimerTimeout timeoutMs);
51  int read(void *data, int bytesToRead, TimerTimeout timeoutMs);
52 
53  uint32_t getBaud(){ return baudRate; }
54 
55 protected:
56  TimeoutTimer timeoutTimer;
57  uint32_t baudRate;
58 
59 #ifdef WICONNECT_SERIAL_RX_BUFFER
60  uint8_t ringBuffer[32];
61  bool bufferAlloc;
62  void rxIrqHandler(void);
63 #endif
64 };
65 
66 
67 }
68 
69 
unsigned long TimerTimeout
Timeout type.