1272 driver for lorawan, which is compatible with current mbed-os
Dependents: LoRaWAN-demo-72-bootcamp
Fork of SX1272Lib by
enums/enums.h
- Committer:
- dudmuck
- Date:
- 2018-01-30
- Revision:
- 8:3f3d884e05ad
- Parent:
- 7:b988b60083a1
File content as of revision 8:3f3d884e05ad:
/* / _____) _ | | ( (____ _____ ____ _| |_ _____ ____| |__ \____ \| ___ | (_ _) ___ |/ ___) _ \ _____) ) ____| | | || |_| ____( (___| | | | (______/|_____)_|_|_| \__)_____)\____)_| |_| ( C )2015 Semtech Description: - License: Revised BSD License, see LICENSE.TXT file include in the project Maintainers: Miguel Luis, Gregory Cristian and Nicolas Huguenin */ #ifndef __ENUMS_H__ #define __ENUMS_H__ /*! * Radio driver internal state machine states definition */ typedef enum RadioState { RF_IDLE = 0, RF_RX_RUNNING, RF_TX_RUNNING, RF_CAD, }RadioState_t; /*! * Type of the modem. [LORA / FSK] */ typedef enum ModemType { MODEM_FSK = 0, MODEM_LORA }RadioModems_t; /*! * Type of the supported board. */ typedef enum BoardType { SX1272MB2XAS = 0, SX1272MB1DCS, NA_MOTE_72, MDOT_F411RE, UNKNOWN }BoardType_t; /*! * Radio FSK modem parameters */ typedef struct { int8_t Power; uint32_t Fdev; uint32_t Bandwidth; uint32_t BandwidthAfc; uint32_t Datarate; uint16_t PreambleLen; bool FixLen; uint8_t PayloadLen; bool CrcOn; bool IqInverted; bool RxContinuous; uint32_t TxTimeout; uint32_t RxSingleTimeout; }RadioFskSettings_t; /*! * Radio FSK packet handler state */ typedef struct { uint8_t PreambleDetected; uint8_t SyncWordDetected; int8_t RssiValue; int32_t AfcValue; uint8_t RxGain; uint16_t Size; uint16_t NbBytes; uint8_t FifoThresh; uint8_t ChunkSize; }RadioFskPacketHandler_t; /*! * Radio LoRa modem parameters */ typedef struct { int8_t Power; uint32_t Bandwidth; uint32_t Datarate; bool LowDatarateOptimize; uint8_t Coderate; uint16_t PreambleLen; bool FixLen; uint8_t PayloadLen; bool CrcOn; bool FreqHopOn; uint8_t HopPeriod; bool IqInverted; bool RxContinuous; uint32_t TxTimeout; bool PublicNetwork; }RadioLoRaSettings_t; /*! * Radio LoRa packet handler state */ typedef struct { int8_t SnrValue; int8_t RssiValue; uint8_t Size; }RadioLoRaPacketHandler_t; /*! * Radio Settings */ typedef struct { RadioState State; ModemType Modem; uint32_t Channel; RadioFskSettings_t Fsk; RadioFskPacketHandler_t FskPacketHandler; RadioLoRaSettings_t LoRa; RadioLoRaPacketHandler_t LoRaPacketHandler; }RadioSettings_t; #endif //__ENUMS_H__