[SX128x] Rework SPI config interface
This commit is contained in:
parent
1ce5e75ab9
commit
0bbc152070
1 changed files with 36 additions and 24 deletions
|
@ -11,12 +11,15 @@ int16_t SX128x::begin(float freq, float bw, uint8_t sf, uint8_t cr, uint8_t sync
|
||||||
this->mod->init();
|
this->mod->init();
|
||||||
this->mod->hal->pinMode(this->mod->getIrq(), this->mod->hal->GpioModeInput);
|
this->mod->hal->pinMode(this->mod->getIrq(), this->mod->hal->GpioModeInput);
|
||||||
this->mod->hal->pinMode(this->mod->getGpio(), this->mod->hal->GpioModeInput);
|
this->mod->hal->pinMode(this->mod->getGpio(), this->mod->hal->GpioModeInput);
|
||||||
this->mod->SPIreadCommand = RADIOLIB_SX128X_CMD_READ_REGISTER;
|
this->mod->spiConfig.widths[RADIOLIB_MODULE_SPI_WIDTH_ADDR] = 16;
|
||||||
this->mod->SPIwriteCommand = RADIOLIB_SX128X_CMD_WRITE_REGISTER;
|
this->mod->spiConfig.widths[RADIOLIB_MODULE_SPI_WIDTH_CMD] = 8;
|
||||||
this->mod->SPInopCommand = RADIOLIB_SX128X_CMD_NOP;
|
this->mod->spiConfig.statusPos = 1;
|
||||||
this->mod->SPIstatusCommand = RADIOLIB_SX128X_CMD_GET_STATUS;
|
this->mod->spiConfig.cmds[RADIOLIB_MODULE_SPI_COMMAND_READ] = RADIOLIB_SX128X_CMD_READ_REGISTER;
|
||||||
this->mod->SPIstreamType = true;
|
this->mod->spiConfig.cmds[RADIOLIB_MODULE_SPI_COMMAND_WRITE] = RADIOLIB_SX128X_CMD_WRITE_REGISTER;
|
||||||
this->mod->SPIparseStatusCb = SPIparseStatus;
|
this->mod->spiConfig.cmds[RADIOLIB_MODULE_SPI_COMMAND_NOP] = RADIOLIB_SX128X_CMD_NOP;
|
||||||
|
this->mod->spiConfig.cmds[RADIOLIB_MODULE_SPI_COMMAND_STATUS] = RADIOLIB_SX128X_CMD_GET_STATUS;
|
||||||
|
this->mod->spiConfig.stream = true;
|
||||||
|
this->mod->spiConfig.parseStatusCb = SPIparseStatus;
|
||||||
RADIOLIB_DEBUG_BASIC_PRINTLN("M\tSX128x");
|
RADIOLIB_DEBUG_BASIC_PRINTLN("M\tSX128x");
|
||||||
|
|
||||||
// initialize LoRa modulation variables
|
// initialize LoRa modulation variables
|
||||||
|
@ -72,12 +75,15 @@ int16_t SX128x::beginGFSK(float freq, uint16_t br, float freqDev, int8_t pwr, ui
|
||||||
this->mod->init();
|
this->mod->init();
|
||||||
this->mod->hal->pinMode(this->mod->getIrq(), this->mod->hal->GpioModeInput);
|
this->mod->hal->pinMode(this->mod->getIrq(), this->mod->hal->GpioModeInput);
|
||||||
this->mod->hal->pinMode(this->mod->getGpio(), this->mod->hal->GpioModeInput);
|
this->mod->hal->pinMode(this->mod->getGpio(), this->mod->hal->GpioModeInput);
|
||||||
this->mod->SPIreadCommand = RADIOLIB_SX128X_CMD_READ_REGISTER;
|
this->mod->spiConfig.widths[RADIOLIB_MODULE_SPI_WIDTH_ADDR] = 16;
|
||||||
this->mod->SPIwriteCommand = RADIOLIB_SX128X_CMD_WRITE_REGISTER;
|
this->mod->spiConfig.widths[RADIOLIB_MODULE_SPI_WIDTH_CMD] = 8;
|
||||||
this->mod->SPInopCommand = RADIOLIB_SX128X_CMD_NOP;
|
this->mod->spiConfig.statusPos = 1;
|
||||||
this->mod->SPIstatusCommand = RADIOLIB_SX128X_CMD_GET_STATUS;
|
this->mod->spiConfig.cmds[RADIOLIB_MODULE_SPI_COMMAND_READ] = RADIOLIB_SX128X_CMD_READ_REGISTER;
|
||||||
this->mod->SPIstreamType = true;
|
this->mod->spiConfig.cmds[RADIOLIB_MODULE_SPI_COMMAND_WRITE] = RADIOLIB_SX128X_CMD_WRITE_REGISTER;
|
||||||
this->mod->SPIparseStatusCb = SPIparseStatus;
|
this->mod->spiConfig.cmds[RADIOLIB_MODULE_SPI_COMMAND_NOP] = RADIOLIB_SX128X_CMD_NOP;
|
||||||
|
this->mod->spiConfig.cmds[RADIOLIB_MODULE_SPI_COMMAND_STATUS] = RADIOLIB_SX128X_CMD_GET_STATUS;
|
||||||
|
this->mod->spiConfig.stream = true;
|
||||||
|
this->mod->spiConfig.parseStatusCb = SPIparseStatus;
|
||||||
RADIOLIB_DEBUG_BASIC_PRINTLN("M\tSX128x");
|
RADIOLIB_DEBUG_BASIC_PRINTLN("M\tSX128x");
|
||||||
|
|
||||||
// initialize GFSK modulation variables
|
// initialize GFSK modulation variables
|
||||||
|
@ -141,12 +147,15 @@ int16_t SX128x::beginBLE(float freq, uint16_t br, float freqDev, int8_t pwr, uin
|
||||||
this->mod->init();
|
this->mod->init();
|
||||||
this->mod->hal->pinMode(this->mod->getIrq(), this->mod->hal->GpioModeInput);
|
this->mod->hal->pinMode(this->mod->getIrq(), this->mod->hal->GpioModeInput);
|
||||||
this->mod->hal->pinMode(this->mod->getGpio(), this->mod->hal->GpioModeInput);
|
this->mod->hal->pinMode(this->mod->getGpio(), this->mod->hal->GpioModeInput);
|
||||||
this->mod->SPIreadCommand = RADIOLIB_SX128X_CMD_READ_REGISTER;
|
this->mod->spiConfig.widths[RADIOLIB_MODULE_SPI_WIDTH_ADDR] = 16;
|
||||||
this->mod->SPIwriteCommand = RADIOLIB_SX128X_CMD_WRITE_REGISTER;
|
this->mod->spiConfig.widths[RADIOLIB_MODULE_SPI_WIDTH_CMD] = 8;
|
||||||
this->mod->SPInopCommand = RADIOLIB_SX128X_CMD_NOP;
|
this->mod->spiConfig.statusPos = 1;
|
||||||
this->mod->SPIstatusCommand = RADIOLIB_SX128X_CMD_GET_STATUS;
|
this->mod->spiConfig.cmds[RADIOLIB_MODULE_SPI_COMMAND_READ] = RADIOLIB_SX128X_CMD_READ_REGISTER;
|
||||||
this->mod->SPIstreamType = true;
|
this->mod->spiConfig.cmds[RADIOLIB_MODULE_SPI_COMMAND_WRITE] = RADIOLIB_SX128X_CMD_WRITE_REGISTER;
|
||||||
this->mod->SPIparseStatusCb = SPIparseStatus;
|
this->mod->spiConfig.cmds[RADIOLIB_MODULE_SPI_COMMAND_NOP] = RADIOLIB_SX128X_CMD_NOP;
|
||||||
|
this->mod->spiConfig.cmds[RADIOLIB_MODULE_SPI_COMMAND_STATUS] = RADIOLIB_SX128X_CMD_GET_STATUS;
|
||||||
|
this->mod->spiConfig.stream = true;
|
||||||
|
this->mod->spiConfig.parseStatusCb = SPIparseStatus;
|
||||||
RADIOLIB_DEBUG_BASIC_PRINTLN("M\tSX128x");
|
RADIOLIB_DEBUG_BASIC_PRINTLN("M\tSX128x");
|
||||||
|
|
||||||
// initialize BLE modulation variables
|
// initialize BLE modulation variables
|
||||||
|
@ -196,12 +205,15 @@ int16_t SX128x::beginFLRC(float freq, uint16_t br, uint8_t cr, int8_t pwr, uint1
|
||||||
this->mod->init();
|
this->mod->init();
|
||||||
this->mod->hal->pinMode(this->mod->getIrq(), this->mod->hal->GpioModeInput);
|
this->mod->hal->pinMode(this->mod->getIrq(), this->mod->hal->GpioModeInput);
|
||||||
this->mod->hal->pinMode(this->mod->getGpio(), this->mod->hal->GpioModeInput);
|
this->mod->hal->pinMode(this->mod->getGpio(), this->mod->hal->GpioModeInput);
|
||||||
this->mod->SPIreadCommand = RADIOLIB_SX128X_CMD_READ_REGISTER;
|
this->mod->spiConfig.widths[RADIOLIB_MODULE_SPI_WIDTH_ADDR] = 16;
|
||||||
this->mod->SPIwriteCommand = RADIOLIB_SX128X_CMD_WRITE_REGISTER;
|
this->mod->spiConfig.widths[RADIOLIB_MODULE_SPI_WIDTH_CMD] = 8;
|
||||||
this->mod->SPInopCommand = RADIOLIB_SX128X_CMD_NOP;
|
this->mod->spiConfig.statusPos = 1;
|
||||||
this->mod->SPIstatusCommand = RADIOLIB_SX128X_CMD_GET_STATUS;
|
this->mod->spiConfig.cmds[RADIOLIB_MODULE_SPI_COMMAND_READ] = RADIOLIB_SX128X_CMD_READ_REGISTER;
|
||||||
this->mod->SPIstreamType = true;
|
this->mod->spiConfig.cmds[RADIOLIB_MODULE_SPI_COMMAND_WRITE] = RADIOLIB_SX128X_CMD_WRITE_REGISTER;
|
||||||
this->mod->SPIparseStatusCb = SPIparseStatus;
|
this->mod->spiConfig.cmds[RADIOLIB_MODULE_SPI_COMMAND_NOP] = RADIOLIB_SX128X_CMD_NOP;
|
||||||
|
this->mod->spiConfig.cmds[RADIOLIB_MODULE_SPI_COMMAND_STATUS] = RADIOLIB_SX128X_CMD_GET_STATUS;
|
||||||
|
this->mod->spiConfig.stream = true;
|
||||||
|
this->mod->spiConfig.parseStatusCb = SPIparseStatus;
|
||||||
RADIOLIB_DEBUG_BASIC_PRINTLN("M\tSX128x");
|
RADIOLIB_DEBUG_BASIC_PRINTLN("M\tSX128x");
|
||||||
|
|
||||||
// initialize FLRC modulation variables
|
// initialize FLRC modulation variables
|
||||||
|
|
Loading…
Add table
Reference in a new issue