[SX126x] Reworked macro configuration system

pull/893/head
jgromes 2023-11-27 19:43:01 +01:00
rodzic 77c9b2875d
commit 49feff6df2
13 zmienionych plików z 34 dodań i 34 usunięć

Wyświetl plik

@ -6,7 +6,7 @@ This file is licensed under the MIT License: https://opensource.org/licenses/MIT
*/ */
#include "STM32WLx.h" #include "STM32WLx.h"
#if !defined(RADIOLIB_EXCLUDE_STM32WLX) #if !RADIOLIB_EXCLUDE_STM32WLX
STM32WLx::STM32WLx(STM32WLx_Module* mod) : SX1262(mod) { } STM32WLx::STM32WLx(STM32WLx_Module* mod) : SX1262(mod) { }
@ -150,4 +150,4 @@ void STM32WLx::clearChannelScanAction() {
this->clearDio1Action(); this->clearDio1Action();
} }
#endif // !defined(RADIOLIB_EXCLUDE_STM32WLX) #endif

Wyświetl plik

@ -10,7 +10,7 @@ This file is licensed under the MIT License: https://opensource.org/licenses/MIT
#include "../../TypeDef.h" #include "../../TypeDef.h"
#if !defined(RADIOLIB_EXCLUDE_STM32WLX) #if !RADIOLIB_EXCLUDE_STM32WLX
#include "../../Module.h" #include "../../Module.h"
#include "SX1262.h" #include "SX1262.h"
@ -153,16 +153,16 @@ class STM32WLx : public SX1262 {
*/ */
void clearChannelScanAction(); void clearChannelScanAction();
#if !defined(RADIOLIB_GODMODE) #if !RADIOLIB_GODMODE
protected: protected:
#endif #endif
virtual int16_t clearIrqStatus(uint16_t clearIrqParams) override; virtual int16_t clearIrqStatus(uint16_t clearIrqParams) override;
#if !defined(RADIOLIB_GODMODE) #if !RADIOLIB_GODMODE
private: private:
#endif #endif
}; };
#endif // !defined(RADIOLIB_EXCLUDE_SX126X) #endif
#endif // _RADIOLIB_STM32WLX_MODULE_H #endif

Wyświetl plik

@ -7,7 +7,7 @@ This file is licensed under the MIT License: https://opensource.org/licenses/MIT
#include "STM32WLx_Module.h" #include "STM32WLx_Module.h"
#if !defined(RADIOLIB_EXCLUDE_STM32WLX) #if !RADIOLIB_EXCLUDE_STM32WLX
#include "../../ArduinoHal.h" #include "../../ArduinoHal.h"
@ -103,4 +103,4 @@ STM32WLx_Module::STM32WLx_Module():
RADIOLIB_STM32WLx_VIRTUAL_PIN_BUSY RADIOLIB_STM32WLx_VIRTUAL_PIN_BUSY
) {} ) {}
#endif // !defined(RADIOLIB_EXCLUDE_STM32WLX) #endif

Wyświetl plik

@ -10,7 +10,7 @@ This file is licensed under the MIT License: https://opensource.org/licenses/MIT
#include "../../TypeDef.h" #include "../../TypeDef.h"
#if !defined(RADIOLIB_EXCLUDE_STM32WLX) #if !RADIOLIB_EXCLUDE_STM32WLX
#include "../../Module.h" #include "../../Module.h"
@ -33,6 +33,6 @@ class STM32WLx_Module : public Module {
STM32WLx_Module(); STM32WLx_Module();
}; };
#endif // !defined(RADIOLIB_EXCLUDE_STM32WLX) #endif
#endif // _RADIOLIB_STM32WLX_MODULE_H #endif

Wyświetl plik

@ -1,5 +1,5 @@
#include "SX1261.h" #include "SX1261.h"
#if !defined(RADIOLIB_EXCLUDE_SX126X) #if !RADIOLIB_EXCLUDE_SX126X
SX1261::SX1261(Module* mod): SX1262(mod) { SX1261::SX1261(Module* mod): SX1262(mod) {
chipType = RADIOLIB_SX1261_CHIP_TYPE; chipType = RADIOLIB_SX1261_CHIP_TYPE;

Wyświetl plik

@ -3,7 +3,7 @@
#include "../../TypeDef.h" #include "../../TypeDef.h"
#if !defined(RADIOLIB_EXCLUDE_SX126X) #if !RADIOLIB_EXCLUDE_SX126X
#include "../../Module.h" #include "../../Module.h"
#include "SX126x.h" #include "SX126x.h"
@ -34,7 +34,7 @@ class SX1261 : public SX1262 {
*/ */
int16_t setOutputPower(int8_t power); int16_t setOutputPower(int8_t power);
#if !defined(RADIOLIB_GODMODE) #if !RADIOLIB_GODMODE
private: private:
#endif #endif

Wyświetl plik

@ -1,5 +1,5 @@
#include "SX1262.h" #include "SX1262.h"
#if !defined(RADIOLIB_EXCLUDE_SX126X) #if !RADIOLIB_EXCLUDE_SX126X
SX1262::SX1262(Module* mod) : SX126x(mod) { SX1262::SX1262(Module* mod) : SX126x(mod) {
chipType = RADIOLIB_SX1262_CHIP_TYPE; chipType = RADIOLIB_SX1262_CHIP_TYPE;

Wyświetl plik

@ -3,7 +3,7 @@
#include "../../TypeDef.h" #include "../../TypeDef.h"
#if !defined(RADIOLIB_EXCLUDE_SX126X) #if !RADIOLIB_EXCLUDE_SX126X
#include "../../Module.h" #include "../../Module.h"
#include "SX126x.h" #include "SX126x.h"
@ -87,7 +87,7 @@ class SX1262: public SX126x {
*/ */
virtual int16_t setOutputPower(int8_t power); virtual int16_t setOutputPower(int8_t power);
#if !defined(RADIOLIB_GODMODE) #if !RADIOLIB_GODMODE
private: private:
#endif #endif

Wyświetl plik

@ -1,5 +1,5 @@
#include "SX1268.h" #include "SX1268.h"
#if !defined(RADIOLIB_EXCLUDE_SX126X) #if !RADIOLIB_EXCLUDE_SX126X
SX1268::SX1268(Module* mod) : SX126x(mod) { SX1268::SX1268(Module* mod) : SX126x(mod) {
chipType = RADIOLIB_SX1268_CHIP_TYPE; chipType = RADIOLIB_SX1268_CHIP_TYPE;

Wyświetl plik

@ -3,7 +3,7 @@
#include "../../TypeDef.h" #include "../../TypeDef.h"
#if !defined(RADIOLIB_EXCLUDE_SX126X) #if !RADIOLIB_EXCLUDE_SX126X
#include "../../Module.h" #include "../../Module.h"
#include "SX126x.h" #include "SX126x.h"
@ -85,7 +85,7 @@ class SX1268: public SX126x {
*/ */
int16_t setOutputPower(int8_t power); int16_t setOutputPower(int8_t power);
#if !defined(RADIOLIB_GODMODE) #if !RADIOLIB_GODMODE
private: private:
#endif #endif

Wyświetl plik

@ -1,7 +1,7 @@
#include "SX126x.h" #include "SX126x.h"
#include <string.h> #include <string.h>
#include <math.h> #include <math.h>
#if !defined(RADIOLIB_EXCLUDE_SX126X) #if !RADIOLIB_EXCLUDE_SX126X
SX126x::SX126x(Module* mod) : PhysicalLayer(RADIOLIB_SX126X_FREQUENCY_STEP_SIZE, RADIOLIB_SX126X_MAX_PACKET_LENGTH) { SX126x::SX126x(Module* mod) : PhysicalLayer(RADIOLIB_SX126X_FREQUENCY_STEP_SIZE, RADIOLIB_SX126X_MAX_PACKET_LENGTH) {
this->mod = mod; this->mod = mod;
@ -1547,7 +1547,7 @@ int16_t SX126x::invertIQ(bool enable) {
return(setPacketParams(this->preambleLengthLoRa, this->crcTypeLoRa, this->implicitLen, this->headerType, this->invertIQEnabled)); return(setPacketParams(this->preambleLengthLoRa, this->crcTypeLoRa, this->implicitLen, this->headerType, this->invertIQEnabled));
} }
#if !defined(RADIOLIB_EXCLUDE_DIRECT_RECEIVE) #if !RADIOLIB_EXCLUDE_DIRECT_RECEIVE
void SX126x::setDirectAction(void (*func)(void)) { void SX126x::setDirectAction(void (*func)(void)) {
setDio1Action(func); setDio1Action(func);
} }
@ -1563,7 +1563,7 @@ int16_t SX126x::uploadPatch(const uint32_t* patch, size_t len, bool nonvolatile)
RADIOLIB_ASSERT(state); RADIOLIB_ASSERT(state);
// check the version // check the version
#if defined(RADIOLIB_DEBUG) #if RADIOLIB_DEBUG
char ver_pre[16]; char ver_pre[16];
this->mod->SPIreadRegisterBurst(RADIOLIB_SX126X_REG_VERSION_STRING, 16, (uint8_t*)ver_pre); this->mod->SPIreadRegisterBurst(RADIOLIB_SX126X_REG_VERSION_STRING, 16, (uint8_t*)ver_pre);
RADIOLIB_DEBUG_PRINTLN("Pre-update version string: %s", ver_pre); RADIOLIB_DEBUG_PRINTLN("Pre-update version string: %s", ver_pre);
@ -1595,7 +1595,7 @@ int16_t SX126x::uploadPatch(const uint32_t* patch, size_t len, bool nonvolatile)
this->mod->SPIwriteStream(RADIOLIB_SX126X_CMD_PRAM_UPDATE, NULL, 0); this->mod->SPIwriteStream(RADIOLIB_SX126X_CMD_PRAM_UPDATE, NULL, 0);
// check the version again // check the version again
#if defined(RADIOLIB_DEBUG) #if RADIOLIB_DEBUG
char ver_post[16]; char ver_post[16];
this->mod->SPIreadRegisterBurst(RADIOLIB_SX126X_REG_VERSION_STRING, 16, (uint8_t*)ver_post); this->mod->SPIreadRegisterBurst(RADIOLIB_SX126X_REG_VERSION_STRING, 16, (uint8_t*)ver_post);
RADIOLIB_DEBUG_PRINTLN("Post-update version string: %s", ver_post); RADIOLIB_DEBUG_PRINTLN("Post-update version string: %s", ver_post);
@ -1839,7 +1839,7 @@ int16_t SX126x::calibrateImage(uint8_t* data) {
int16_t state = this->mod->SPIwriteStream(RADIOLIB_SX126X_CMD_CALIBRATE_IMAGE, data, 2); int16_t state = this->mod->SPIwriteStream(RADIOLIB_SX126X_CMD_CALIBRATE_IMAGE, data, 2);
// if something failed, show the device errors // if something failed, show the device errors
#if defined(RADIOLIB_DEBUG) #if RADIOLIB_DEBUG
if(state != RADIOLIB_ERR_NONE) { if(state != RADIOLIB_ERR_NONE) {
// unless mode is forced to standby, device errors will be 0 // unless mode is forced to standby, device errors will be 0
standby(); standby();
@ -2099,7 +2099,7 @@ int16_t SX126x::config(uint8_t modem) {
state = this->mod->SPIcheckStream(); state = this->mod->SPIcheckStream();
// if something failed, show the device errors // if something failed, show the device errors
#if defined(RADIOLIB_DEBUG) #if RADIOLIB_DEBUG
if(state != RADIOLIB_ERR_NONE) { if(state != RADIOLIB_ERR_NONE) {
// unless mode is forced to standby, device errors will be 0 // unless mode is forced to standby, device errors will be 0
standby(); standby();
@ -2142,7 +2142,7 @@ bool SX126x::findChip(const char* verStr) {
RADIOLIB_DEBUG_PRINTLN(); RADIOLIB_DEBUG_PRINTLN();
flagFound = true; flagFound = true;
} else { } else {
#if defined(RADIOLIB_DEBUG) #if RADIOLIB_DEBUG
RADIOLIB_DEBUG_PRINTLN("SX126x not found! (%d of 10 tries) RADIOLIB_SX126X_REG_VERSION_STRING:", i + 1); RADIOLIB_DEBUG_PRINTLN("SX126x not found! (%d of 10 tries) RADIOLIB_SX126X_REG_VERSION_STRING:", i + 1);
RADIOLIB_DEBUG_HEXDUMP((uint8_t*)version, 16, RADIOLIB_SX126X_REG_VERSION_STRING); RADIOLIB_DEBUG_HEXDUMP((uint8_t*)version, 16, RADIOLIB_SX126X_REG_VERSION_STRING);
RADIOLIB_DEBUG_PRINTLN("Expected string: %s", verStr); RADIOLIB_DEBUG_PRINTLN("Expected string: %s", verStr);

Wyświetl plik

@ -3,7 +3,7 @@
#include "../../TypeDef.h" #include "../../TypeDef.h"
#if !defined(RADIOLIB_EXCLUDE_SX126X) #if !RADIOLIB_EXCLUDE_SX126X
#include "../../Module.h" #include "../../Module.h"
@ -1039,7 +1039,7 @@ class SX126x: public PhysicalLayer {
*/ */
int16_t invertIQ(bool enable) override; int16_t invertIQ(bool enable) override;
#if !defined(RADIOLIB_EXCLUDE_DIRECT_RECEIVE) #if !RADIOLIB_EXCLUDE_DIRECT_RECEIVE
/*! /*!
\brief Set interrupt service routine function to call when data bit is received in direct mode. \brief Set interrupt service routine function to call when data bit is received in direct mode.
\param func Pointer to interrupt service routine. \param func Pointer to interrupt service routine.
@ -1104,7 +1104,7 @@ class SX126x: public PhysicalLayer {
*/ */
int16_t setPaConfig(uint8_t paDutyCycle, uint8_t deviceSel, uint8_t hpMax = RADIOLIB_SX126X_PA_CONFIG_HP_MAX, uint8_t paLut = RADIOLIB_SX126X_PA_CONFIG_PA_LUT); int16_t setPaConfig(uint8_t paDutyCycle, uint8_t deviceSel, uint8_t hpMax = RADIOLIB_SX126X_PA_CONFIG_HP_MAX, uint8_t paLut = RADIOLIB_SX126X_PA_CONFIG_PA_LUT);
#if !defined(RADIOLIB_GODMODE) #if !RADIOLIB_GODMODE
protected: protected:
#endif #endif
// SX126x SPI command implementations // SX126x SPI command implementations
@ -1146,7 +1146,7 @@ class SX126x: public PhysicalLayer {
int16_t fixImplicitTimeout(); int16_t fixImplicitTimeout();
int16_t fixInvertedIQ(uint8_t iqConfig); int16_t fixInvertedIQ(uint8_t iqConfig);
#if !defined(RADIOLIB_GODMODE) && !defined(RADIOLIB_LOW_LEVEL) #if !RADIOLIB_GODMODE && !RADIOLIB_LOW_LEVEL
protected: protected:
#endif #endif
Module* mod; Module* mod;
@ -1154,7 +1154,7 @@ class SX126x: public PhysicalLayer {
// common low-level SPI interface // common low-level SPI interface
static int16_t SPIparseStatus(uint8_t in); static int16_t SPIparseStatus(uint8_t in);
#if !defined(RADIOLIB_GODMODE) #if !RADIOLIB_GODMODE
protected: protected:
#endif #endif

Wyświetl plik

@ -33,7 +33,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include "../../../TypeDef.h" #include "../../../TypeDef.h"
#if !defined(RADIOLIB_EXCLUDE_SX126X) #if !RADIOLIB_EXCLUDE_SX126X
// the following is a binary patch to the SX1262 // the following is a binary patch to the SX1262
// this patch is needed to enable spectral scan functionality // this patch is needed to enable spectral scan functionality