Peritoneal Dialysis Capstone
Controlling catheter for peritoneal dialysis
Loading...
Searching...
No Matches
ArduinoHAL.h
Go to the documentation of this file.
1
4
5#ifndef ARDUINO_HAL_H
6#define ARDUINO_HAL_H
7
8#include <IHAL.h>
9
16class ArduinoHAL : public IHAL {
17public:
18 ArduinoHAL(int serialBaud);
19
20 AnalogValue analogRead(int pin) override;
21 void analogWrite(int pin, AnalogValue value) override;
22 AnalogValue getMaxAnalogReadQuant() const override;
23 AnalogValue getMaxAnalogWriteQuant() const override;
24
25 void configurePin(int pin, PinMode mode) override;
26 DigitalValue digitalRead(int pin) override;
27 void digitalWrite(int pin, DigitalValue value) override;
28
29 void beginSerial() override;
30 size_t print(const char *s) override;
31 size_t println(const char *s) override;
32
33 void delayMs(unsigned long durationMs) override;
34 unsigned long getTimeMs() override;
35
36private:
37 static constexpr AnalogValue MAX_ANALOG_READ_QUANT = 1023;
38 static constexpr AnalogValue MAX_ANALOG_WRITE_QUANT = 255;
39
41};
42
43#endif // ARDUINO_HAL_H
PinMode
Definition IHAL.h:17
int AnalogValue
Definition IHAL.h:10
DigitalValue
Definition IHAL.h:12
size_t println(const char *s) override
Transmits an ASCII string with trailing newline over serial.
Definition ArduinoHAL.cpp:58
static constexpr AnalogValue MAX_ANALOG_READ_QUANT
Definition ArduinoHAL.h:37
AnalogValue getMaxAnalogReadQuant() const override
Returns the maximum quantized value of an analog read.
Definition ArduinoHAL.cpp:18
static constexpr AnalogValue MAX_ANALOG_WRITE_QUANT
Definition ArduinoHAL.h:38
AnalogValue analogRead(int pin) override
Samples an analog input pin.
Definition ArduinoHAL.cpp:9
DigitalValue digitalRead(int pin) override
Samples a digital input pin.
Definition ArduinoHAL.cpp:35
void digitalWrite(int pin, DigitalValue value) override
Drives a digital output pin.
Definition ArduinoHAL.cpp:39
void beginSerial() override
Initializes the serial interface.
Definition ArduinoHAL.cpp:48
void analogWrite(int pin, AnalogValue value) override
Drives an analog output pin.
Definition ArduinoHAL.cpp:13
int m_serialBaud
Definition ArduinoHAL.h:40
AnalogValue getMaxAnalogWriteQuant() const override
Returns the maximum quantized value of an analog write.
Definition ArduinoHAL.cpp:22
void delayMs(unsigned long durationMs) override
Suspends execution for a specified duration in milliseconds.
Definition ArduinoHAL.cpp:64
unsigned long getTimeMs() override
Returns the number of milliseconds elapsed since the start of execution, modulo ULONG_MAX-1.
Definition ArduinoHAL.cpp:68
void configurePin(int pin, PinMode mode) override
Configures a pin for use as an input or output.
Definition ArduinoHAL.cpp:28
ArduinoHAL(int serialBaud)
Definition ArduinoHAL.cpp:5
size_t print(const char *s) override
Transmits an ASCII string over serial.
Definition ArduinoHAL.cpp:53
A hardware abstraction layer interface.
Definition IHAL.h:29