Ersa Wearable Platform
Embedded smartwatch firmware and application framework
Loading...
Searching...
No Matches
pins.h
Go to the documentation of this file.
1#pragma once
2
3#include <stdint.h>
4
5namespace ersa {
6namespace board {
7
9enum class PinFunction { Gpio, I2c, Spi, Adc };
11enum class PinPull { None, Up, Down };
13enum class PinActiveLevel { High, Low };
16
30
32struct I2cPins { Pin sda; Pin scl; };
48
57class Pins {
58public:
60 virtual ~Pins() = default;
62 virtual const I2cPins& i2c() const = 0;
64 virtual const SpiPins& spi() const = 0;
66 virtual const DisplayPins& display() const = 0;
68 virtual const ButtonPins& buttons() const = 0;
70 virtual const BatteryPins& battery() const = 0;
71};
72
73} // namespace board
74} // namespace ersa
Definition pins.h:57
virtual const SpiPins & spi() const =0
virtual const I2cPins & i2c() const =0
virtual const DisplayPins & display() const =0
virtual ~Pins()=default
virtual const ButtonPins & buttons() const =0
virtual const BatteryPins & battery() const =0
PinPull
Definition pins.h:11
PinFunction
Definition pins.h:9
PinActiveLevel
Definition pins.h:13
PinDirection
Definition pins.h:15
Definition application.h:10
Definition pins.h:40
uint8_t voltageScaleNumerator
Definition pins.h:44
Pin adc
Definition pins.h:42
uint8_t voltageScaleDenominator
Definition pins.h:46
Definition pins.h:38
Pin top
Definition pins.h:38
Pin bottom
Definition pins.h:38
Definition pins.h:36
Pin reset
Definition pins.h:36
Pin chipSelect
Definition pins.h:36
Pin busy
Definition pins.h:36
Pin dataCommand
Definition pins.h:36
Definition pins.h:32
Pin scl
Definition pins.h:32
Pin sda
Definition pins.h:32
Definition pins.h:18
PinFunction function
Definition pins.h:22
PinPull pull
Definition pins.h:24
int number
Definition pins.h:20
PinActiveLevel activeLevel
Definition pins.h:26
PinDirection direction
Definition pins.h:28
Definition pins.h:34
Pin clock
Definition pins.h:34
Pin controllerIn
Definition pins.h:34
Pin controllerOut
Definition pins.h:34