| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- #include "cad.h"
- #include "radio.h"
- States_t State = LOWPOWER;
- CadRx_t CadRx = CAD_FAIL;
- bool PacketReceived = false;
- bool RxTimeoutTimerIrqFlag = false;
- uint16_t channelActivityDetectedCnt = 0;
- uint16_t RxCorrectCnt = 0;
- uint16_t RxErrorCnt = 0;
- uint16_t RxTimeoutCnt = 0;
- uint16_t SymbTimeoutCnt = 0;
- int16_t RssiMoy = 0;
- int8_t SnrMoy = 0;
- void OnCadDone( bool channelActivityDetected)
- {
- Radio.Standby( );
- if( channelActivityDetected == true )
- {
- CadRx = CAD_SUCCESS;
- }
- else
- {
- CadRx = CAD_FAIL;
- }
- State = RX;
- }
- void SX126xConfigureCad( RadioLoRaCadSymbols_t cadSymbolNum, uint8_t cadDetPeak, uint8_t cadDetMin , uint32_t cadTimeout)
- {
- SX126xSetDioIrqParams( IRQ_CAD_DONE | IRQ_CAD_ACTIVITY_DETECTED, IRQ_CAD_DONE | IRQ_CAD_ACTIVITY_DETECTED,
- IRQ_RADIO_NONE, IRQ_RADIO_NONE );
- SX126xSetCadParams( cadSymbolNum, cadDetPeak, cadDetMin, LORA_CAD_ONLY, ((cadTimeout * 1000) / 15.625 ));
- }
- //static void CADTimeoutTimeoutIrq( void )
- //{
- // Radio.Standby( );
- // State = START_CAD;
- //}
- //static void RxTimeoutTimerIrq( void )
- //{
- // RxTimeoutTimerIrqFlag = true;
- //}
|