From 37bb8af7687ebb349137d01fbc0847dcd2c61d3b Mon Sep 17 00:00:00 2001 From: jgromes Date: Sat, 22 Apr 2023 18:08:08 +0200 Subject: [PATCH] [HAL] Fixed formatting --- src/ArduinoHal.cpp | 129 ++++++++++++++++++++++++++------------------- src/ArduinoHal.h | 19 ++++--- 2 files changed, 85 insertions(+), 63 deletions(-) diff --git a/src/ArduinoHal.cpp b/src/ArduinoHal.cpp index 6688a4f8..8b176feb 100644 --- a/src/ArduinoHal.cpp +++ b/src/ArduinoHal.cpp @@ -2,9 +2,9 @@ #if defined(RADIOLIB_BUILD_ARDUINO) -ArduinoHal::ArduinoHal(SPIClass& spi, SPISettings spiSettings): Hal(INPUT, OUTPUT, LOW, HIGH, RISING, FALLING), _spi(&spi), _spiSettings(spiSettings) {} +ArduinoHal::ArduinoHal(): RadioLibHal(INPUT, OUTPUT, LOW, HIGH, RISING, FALLING), _spi(&RADIOLIB_DEFAULT_SPI), _initInterface(true) {} -ArduinoHal::ArduinoHal(): Hal(INPUT, OUTPUT, LOW, HIGH, RISING, FALLING), _spi(&RADIOLIB_DEFAULT_SPI), _initInterface(true) {} +ArduinoHal::ArduinoHal(SPIClass& spi, SPISettings spiSettings): RadioLibHal(INPUT, OUTPUT, LOW, HIGH, RISING, FALLING), _spi(&spi), _spiSettings(spiSettings) {} void ArduinoHal::init() { if(_initInterface) { @@ -19,128 +19,147 @@ void ArduinoHal::term() { } void inline ArduinoHal::pinMode(uint32_t pin, uint32_t mode) { - if (pin == RADIOLIB_NC) { + if(pin == RADIOLIB_NC) { return; } ::pinMode(pin, RADIOLIB_ARDUINOHAL_PIN_MODE_CAST mode); } + void inline ArduinoHal::digitalWrite(uint32_t pin, uint32_t value) { - if (pin == RADIOLIB_NC) { + if(pin == RADIOLIB_NC) { return; } ::digitalWrite(pin, RADIOLIB_ARDUINOHAL_PIN_STATUS_CAST value); } + uint32_t inline ArduinoHal::digitalRead(uint32_t pin) { - if (pin == RADIOLIB_NC) { + if(pin == RADIOLIB_NC) { return 0; } - return ::digitalRead(pin); + return(::digitalRead(pin)); } + void inline ArduinoHal::attachInterrupt(uint32_t interruptNum, void (*interruptCb)(void), uint32_t mode) { - if (interruptNum == RADIOLIB_NC) { + if(interruptNum == RADIOLIB_NC) { return; } ::attachInterrupt(interruptNum, interruptCb, RADIOLIB_ARDUINOHAL_INTERRUPT_MODE_CAST mode); } + void inline ArduinoHal::detachInterrupt(uint32_t interruptNum) { - if (interruptNum == RADIOLIB_NC) { + if(interruptNum == RADIOLIB_NC) { return; } ::detachInterrupt(interruptNum); } + void inline ArduinoHal::delay(unsigned long ms) { ::delay(ms); } + void inline ArduinoHal::delayMicroseconds(unsigned long us) { ::delayMicroseconds(us); } + unsigned long inline ArduinoHal::millis() { - return ::millis(); + return(::millis()); } + unsigned long inline ArduinoHal::micros() { - return ::micros(); + return(::micros()); } + long inline ArduinoHal::pulseIn(uint32_t pin, uint32_t state, unsigned long timeout) { - if (pin == RADIOLIB_NC) { + if(pin == RADIOLIB_NC) { return 0; } - return ::pulseIn(pin, state, timeout); + return(::pulseIn(pin, state, timeout)); } + void inline ArduinoHal::spiBegin() { _spi->begin(); } + void inline ArduinoHal::spiBeginTransaction() { _spi->beginTransaction(_spiSettings); } + uint8_t inline ArduinoHal::spiTransfer(uint8_t b) { - return _spi->transfer(b); + return(_spi->transfer(b)); } + void inline ArduinoHal::spiEndTransaction() { _spi->endTransaction(); } + void inline ArduinoHal::spiEnd() { _spi->end(); } + void inline ArduinoHal::tone(uint32_t pin, unsigned int frequency, unsigned long duration) { #if !defined(RADIOLIB_TONE_UNSUPPORTED) - if (pin == RADIOLIB_NC) { - return; - } - ::tone(pin, frequency, duration); + if(pin == RADIOLIB_NC) { + return; + } + ::tone(pin, frequency, duration); #elif defined(ESP32) - // ESP32 tone() emulation - (void)duration; - if(_prev == -1) { - ledcAttachPin(pin, RADIOLIB_TONE_ESP32_CHANNEL); - } - if(_prev != frequency) { - ledcWriteTone(RADIOLIB_TONE_ESP32_CHANNEL, frequency); - } - _prev = frequency; + // ESP32 tone() emulation + (void)duration; + if(_prev == -1) { + ledcAttachPin(pin, RADIOLIB_TONE_ESP32_CHANNEL); + } + if(_prev != frequency) { + ledcWriteTone(RADIOLIB_TONE_ESP32_CHANNEL, frequency); + } + _prev = frequency; #elif defined(RADIOLIB_MBED_TONE_OVERRIDE) - // better tone for mbed OS boards - (void)duration; - if(!pwmPin) { - pwmPin = new mbed::PwmOut(digitalPinToPinName(pin)); - } - pwmPin->period(1.0 / frequency); - pwmPin->write(0.5); + // better tone for mbed OS boards + (void)duration; + if(!pwmPin) { + pwmPin = new mbed::PwmOut(digitalPinToPinName(pin)); + } + pwmPin->period(1.0 / frequency); + pwmPin->write(0.5); #endif } + void inline ArduinoHal::noTone(uint32_t pin) { #if !defined(RADIOLIB_TONE_UNSUPPORTED) and defined(ARDUINO_ARCH_STM32) - if (pin == RADIOLIB_NC) { - return; - } - ::noTone(pin, false); + if(pin == RADIOLIB_NC) { + return; + } + ::noTone(pin, false); #elif !defined(RADIOLIB_TONE_UNSUPPORTED) - if (pin == RADIOLIB_NC) { - return; - } - ::noTone(pin); + if(pin == RADIOLIB_NC) { + return; + } + ::noTone(pin); #elif defined(ESP32) - if (pin == RADIOLIB_NC) { - return; - } - // ESP32 tone() emulation - ledcDetachPin(pin); - ledcWrite(RADIOLIB_TONE_ESP32_CHANNEL, 0); - _prev = -1; + if(pin == RADIOLIB_NC) { + return; + } + // ESP32 tone() emulation + ledcDetachPin(pin); + ledcWrite(RADIOLIB_TONE_ESP32_CHANNEL, 0); + _prev = -1; #elif defined(RADIOLIB_MBED_TONE_OVERRIDE) - if (pin == RADIOLIB_NC) { - return; - } - // better tone for mbed OS boards - (void)pin; - pwmPin->suspend(); + if(pin == RADIOLIB_NC) { + return; + } + // better tone for mbed OS boards + (void)pin; + pwmPin->suspend(); #endif } + void inline ArduinoHal::yield() { #if !defined(RADIOLIB_YIELD_UNSUPPORTED) ::yield(); #endif } + uint32_t inline ArduinoHal::pinToInterrupt(uint32_t pin) { - return digitalPinToInterrupt(pin); + return(digitalPinToInterrupt(pin)); } + #endif diff --git a/src/ArduinoHal.h b/src/ArduinoHal.h index cc6da0ea..eeb21d0f 100644 --- a/src/ArduinoHal.h +++ b/src/ArduinoHal.h @@ -1,8 +1,10 @@ +// make sure this is always compiled #include "TypeDef.h" #if !defined(_RADIOLIB_ARDUINOHAL_H) #define _RADIOLIB_ARDUINOHAL_H +// this file only makes sense for Arduino builds #if defined(RADIOLIB_BUILD_ARDUINO) #if defined(RADIOLIB_MBED_TONE_OVERRIDE) @@ -10,7 +12,7 @@ #endif #include "Hal.h" -#include +//#include #include @@ -18,9 +20,9 @@ \class ArduinoHal \brief Arduino default hardware abstraction library implementation. - This class can be extended to support other Arduino platform or change behaviour of the default implementation + This class can be extended to support other Arduino platform or change behaviour of the default implementation. */ -class ArduinoHal : public Hal { +class ArduinoHal : public RadioLibHal { public: /*! \brief Arduino Hal constructor. Will use the default SPI interface and automatically initialize it. @@ -29,16 +31,12 @@ class ArduinoHal : public Hal { /*! \brief Arduino Hal constructor. Will not attempt SPI interface initialization. - \param spi SPI interface to be used, can also use software SPI implementations. - \param spiSettings SPI interface settings. */ ArduinoHal(SPIClass& spi, SPISettings spiSettings = RADIOLIB_DEFAULT_SPI_SETTINGS); - void init() override; - void term() override; - + // implementations of pure virtual RadioLibHal methods void pinMode(uint32_t pin, uint32_t mode) override; void digitalWrite(uint32_t pin, uint32_t value) override; uint32_t digitalRead(uint32_t pin) override; @@ -54,6 +52,10 @@ class ArduinoHal : public Hal { uint8_t spiTransfer(uint8_t b) override; void spiEndTransaction() override; void spiEnd() override; + + // implementations of virtual RadioLibHal methods + void init() override; + void term() override; void tone(uint32_t pin, unsigned int frequency, unsigned long duration = 0) override; void noTone(uint32_t pin) override; void yield() override; @@ -76,4 +78,5 @@ class ArduinoHal : public Hal { }; #endif + #endif