3 #if !defined(_RADIOLIB_HAL_H)
4 #define _RADIOLIB_HAL_H
13 const uint32_t GpioModeInput;
14 const uint32_t GpioModeOutput;
15 const uint32_t GpioLevelLow;
16 const uint32_t GpioLevelHigh;
17 const uint32_t GpioInterruptRising;
18 const uint32_t GpioInterruptFalling;
20 Hal(
const uint32_t input,
const uint32_t output,
const uint32_t low,
const uint32_t high,
const uint32_t rising,
const uint32_t falling);
25 virtual void pinMode(uint32_t pin, uint32_t mode) = 0;
26 virtual void digitalWrite(uint32_t pin, uint32_t value) = 0;
27 virtual uint32_t digitalRead(uint32_t pin) = 0;
28 virtual void attachInterrupt(uint32_t interruptNum,
void (*interruptCb)(
void), uint32_t mode) = 0;
29 virtual void detachInterrupt(uint32_t interruptNum) = 0;
30 virtual void delay(
unsigned long ms) = 0;
31 virtual void delayMicroseconds(
unsigned long us) = 0;
32 virtual unsigned long millis() = 0;
33 virtual unsigned long micros() = 0;
34 virtual long pulseIn(uint32_t pin, uint32_t state,
unsigned long timeout) = 0;
35 virtual void spiBegin() = 0;
36 virtual void spiBeginTransaction() = 0;
37 virtual uint8_t spiTransfer(uint8_t b) = 0;
38 virtual void spiEndTransaction() = 0;
39 virtual void spiEnd() = 0;
41 virtual void tone(uint32_t pin,
unsigned int frequency,
unsigned long duration = 0);
42 virtual void noTone(uint32_t pin);
44 virtual uint32_t pinToInterrupt(uint32_t pin);
Hardware abstraction library base interface.
Definition: Hal.h:11