Hexmodal SX1276lib
Dependents: LoRaWAN-hello-world_Class_C_Anish
enums/enums.h
- Committer:
- mluis
- Date:
- 2014-12-16
- Revision:
- 13:618826a997e2
- Parent:
- 7:2b555111463f
- Child:
- 21:2e496deb7858
File content as of revision 13:618826a997e2:
/* / _____) _ | | ( (____ _____ ____ _| |_ _____ ____| |__ \____ \| ___ | (_ _) ___ |/ ___) _ \ _____) ) ____| | | || |_| ____( (___| | | | (______/|_____)_|_|_| \__)_____)\____)_| |_| ( C )2014 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__ /*! * State of the radio: * [IDLE, * RX_RUNNING, RX_TIMEOUT, RX_ERROR, * TX_RUNNING, TX_TIMEOUT, CAD] */ enum RadioState { LOWPOWER = 0, IDLE, RX, RX_TIMEOUT, RX_ERROR, TX, TX_TIMEOUT, CAD, CAD_DONE }; /*! * Type of the modem. [LORA / FSK] */ enum ModemType { MODEM_FSK = 0, MODEM_LORA }; /*! * Type of the supported board. [SX1276MB1MAS / SX1276MB1LAS] */ enum BoardType { SX1276MB1MAS = 0, SX1276MB1LAS, UNKNOWN }; /*! * 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; }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; }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__