mirror of
https://github.com/sandeepmistry/arduino-LoRa.git
synced 2025-04-20 23:47:47 +03:00
Add packetSnr and random API's
This commit is contained in:
parent
0d648f4031
commit
9b19623a1c
@ -20,6 +20,7 @@ endPacket KEYWORD2
|
|||||||
|
|
||||||
parsePacket KEYWORD2
|
parsePacket KEYWORD2
|
||||||
packetRssi KEYWORD2
|
packetRssi KEYWORD2
|
||||||
|
packetSnr KEYWORD2
|
||||||
|
|
||||||
write KEYWORD2
|
write KEYWORD2
|
||||||
|
|
||||||
@ -33,6 +34,8 @@ receive KEYWORD2
|
|||||||
idle KEYWORD2
|
idle KEYWORD2
|
||||||
sleep KEYWORD2
|
sleep KEYWORD2
|
||||||
|
|
||||||
|
random KEYWORD2
|
||||||
|
|
||||||
setFrequency KEYWORD2
|
setFrequency KEYWORD2
|
||||||
setTxPower KEYWORD2
|
setTxPower KEYWORD2
|
||||||
setSpreadingFactor KEYWORD2
|
setSpreadingFactor KEYWORD2
|
||||||
|
12
src/LoRa.cpp
12
src/LoRa.cpp
@ -15,11 +15,13 @@
|
|||||||
#define REG_IRQ_FLAGS 0x12
|
#define REG_IRQ_FLAGS 0x12
|
||||||
#define REG_RX_NB_BYTES 0x13
|
#define REG_RX_NB_BYTES 0x13
|
||||||
#define REG_PKT_RSSI_VALUE 0x1a
|
#define REG_PKT_RSSI_VALUE 0x1a
|
||||||
|
#define REG_PKT_SNR_VALUE 0x1b
|
||||||
#define REG_MODEM_CONFIG_1 0x1d
|
#define REG_MODEM_CONFIG_1 0x1d
|
||||||
#define REG_MODEM_CONFIG_2 0x1e
|
#define REG_MODEM_CONFIG_2 0x1e
|
||||||
#define REG_PREAMBLE_MSB 0x20
|
#define REG_PREAMBLE_MSB 0x20
|
||||||
#define REG_PREAMBLE_LSB 0x21
|
#define REG_PREAMBLE_LSB 0x21
|
||||||
#define REG_PAYLOAD_LENGTH 0x22
|
#define REG_PAYLOAD_LENGTH 0x22
|
||||||
|
#define REG_RSSI_WIDEBAND 0x2c
|
||||||
#define REG_DETECTION_OPTIMIZE 0x31
|
#define REG_DETECTION_OPTIMIZE 0x31
|
||||||
#define REG_DETECTION_THRESHOLD 0x37
|
#define REG_DETECTION_THRESHOLD 0x37
|
||||||
#define REG_SYNC_WORD 0x39
|
#define REG_SYNC_WORD 0x39
|
||||||
@ -172,6 +174,11 @@ int LoRaClass::packetRssi()
|
|||||||
return (readRegister(REG_PKT_RSSI_VALUE) - (_frequency < 868E6 ? 164 : 157));
|
return (readRegister(REG_PKT_RSSI_VALUE) - (_frequency < 868E6 ? 164 : 157));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
float LoRaClass::packetSnr()
|
||||||
|
{
|
||||||
|
return ((int8_t)readRegister(REG_PKT_SNR_VALUE)) * 0.25;
|
||||||
|
}
|
||||||
|
|
||||||
size_t LoRaClass::write(uint8_t byte)
|
size_t LoRaClass::write(uint8_t byte)
|
||||||
{
|
{
|
||||||
return write(&byte, sizeof(byte));
|
return write(&byte, sizeof(byte));
|
||||||
@ -263,6 +270,11 @@ void LoRaClass::sleep()
|
|||||||
writeRegister(REG_OP_MODE, MODE_LONG_RANGE_MODE | MODE_SLEEP);
|
writeRegister(REG_OP_MODE, MODE_LONG_RANGE_MODE | MODE_SLEEP);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
byte LoRaClass::random()
|
||||||
|
{
|
||||||
|
return readRegister(REG_RSSI_WIDEBAND);
|
||||||
|
}
|
||||||
|
|
||||||
void LoRaClass::setFrequency(long frequency)
|
void LoRaClass::setFrequency(long frequency)
|
||||||
{
|
{
|
||||||
_frequency = frequency;
|
_frequency = frequency;
|
||||||
|
@ -20,6 +20,7 @@ public:
|
|||||||
|
|
||||||
int parsePacket();
|
int parsePacket();
|
||||||
int packetRssi();
|
int packetRssi();
|
||||||
|
float packetSnr();
|
||||||
|
|
||||||
// from Print
|
// from Print
|
||||||
virtual size_t write(uint8_t byte);
|
virtual size_t write(uint8_t byte);
|
||||||
@ -37,6 +38,8 @@ public:
|
|||||||
void idle();
|
void idle();
|
||||||
void sleep();
|
void sleep();
|
||||||
|
|
||||||
|
byte random();
|
||||||
|
|
||||||
void setFrequency(long frequency);
|
void setFrequency(long frequency);
|
||||||
void setTxPower(int level);
|
void setTxPower(int level);
|
||||||
void setSpreadingFactor(int sf);
|
void setSpreadingFactor(int sf);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user