3 #if !defined(_RADIOLIB_ARDUINOHAL_H)
4 #define _RADIOLIB_ARDUINOHAL_H
6 #if defined(RADIOLIB_BUILD_ARDUINO)
8 #if defined(RADIOLIB_MBED_TONE_OVERRIDE)
23 class ArduinoHal :
public Hal {
37 ArduinoHal(SPIClass& spi, SPISettings spiSettings = RADIOLIB_DEFAULT_SPI_SETTINGS);
42 void pinMode(uint32_t pin, uint32_t mode)
override;
43 void digitalWrite(uint32_t pin, uint32_t value)
override;
44 uint32_t digitalRead(uint32_t pin)
override;
45 void attachInterrupt(uint32_t interruptNum,
void (*interruptCb)(
void), uint32_t mode)
override;
46 void detachInterrupt(uint32_t interruptNum)
override;
47 void delay(
unsigned long ms)
override;
48 void delayMicroseconds(
unsigned long us)
override;
49 unsigned long millis()
override;
50 unsigned long micros()
override;
51 long pulseIn(uint32_t pin, uint32_t state,
unsigned long timeout)
override;
52 void spiBegin()
override;
53 void spiBeginTransaction()
override;
54 uint8_t spiTransfer(uint8_t b)
override;
55 void spiEndTransaction()
override;
56 void spiEnd()
override;
57 void tone(uint32_t pin,
unsigned int frequency,
unsigned long duration = 0)
override;
58 void noTone(uint32_t pin)
override;
59 void yield()
override;
60 uint32_t pinToInterrupt(uint32_t pin)
override;
62 #if !defined(RADIOLIB_GODMODE)
65 SPIClass* _spi = NULL;
66 SPISettings _spiSettings = RADIOLIB_DEFAULT_SPI_SETTINGS;
67 bool _initInterface =
false;
69 #if defined(RADIOLIB_MBED_TONE_OVERRIDE)
70 mbed::PwmOut *pwmPin = NULL;
Hardware abstraction library base interface.
Definition: Hal.h:11