FrSkyR9: fix independant compilation issue

This commit is contained in:
Pascal Langer 2020-07-04 11:48:26 +02:00
parent 63dd8a9215
commit 49d993f613
3 changed files with 22 additions and 20 deletions

View File

@ -17,8 +17,9 @@
/** FrSky D and X routines **/ /** FrSky D and X routines **/
/******************************/ /******************************/
#if defined(FRSKYD_CC2500_INO) || defined(FRSKYX_CC2500_INO) || defined(FRSKYX_CC2500_INO) || defined(FRSKYL_CC2500_INO) || defined(FRSKY_RX_CC2500_INO) || defined(FRSKYR9_SX1276_INO) #if defined(FRSKYD_CC2500_INO) || defined(FRSKYX_CC2500_INO) || defined(FRSKYL_CC2500_INO) || defined(FRSKY_RX_CC2500_INO) || defined(FRSKYR9_SX1276_INO)
uint8_t FrSkyFormat=0; uint8_t FrSkyFormat=0;
uint8_t FrSkyX_chanskip;
#endif #endif
#if defined(FRSKYX_CC2500_INO) || defined(FRSKYL_CC2500_INO) || defined(FRSKY_RX_CC2500_INO) || defined(FRSKYR9_SX1276_INO) #if defined(FRSKYX_CC2500_INO) || defined(FRSKYL_CC2500_INO) || defined(FRSKY_RX_CC2500_INO) || defined(FRSKYR9_SX1276_INO)
@ -380,21 +381,22 @@ void Frsky_init_clone(void)
} }
#endif #endif
#if defined(FRSKYX_CC2500_INO) || defined(FRSKYL_CC2500_INO) #if defined(FRSKYX_CC2500_INO) || defined(FRSKYL_CC2500_INO) || defined(FRSKYR9_SX1276_INO)
uint8_t FrSkyX_chanskip;
uint8_t FrSkyX_TX_Seq, FrSkyX_TX_IN_Seq; uint8_t FrSkyX_TX_Seq, FrSkyX_TX_IN_Seq;
uint8_t FrSkyX_RX_Seq ; uint8_t FrSkyX_RX_Seq ;
#ifdef SPORT_SEND #ifdef SPORT_SEND
struct t_FrSkyX_TX_Frame struct t_FrSkyX_TX_Frame
{ {
uint8_t count; uint8_t count;
uint8_t payload[8]; uint8_t payload[8];
} ; } ;
// Store FrskyX telemetry // Store FrskyX telemetry
struct t_FrSkyX_TX_Frame FrSkyX_TX_Frames[4] ; struct t_FrSkyX_TX_Frame FrSkyX_TX_Frames[4] ;
#endif
#endif #endif
#if defined(FRSKYX_CC2500_INO) || defined(FRSKYL_CC2500_INO)
static void __attribute__((unused)) FrSkyX_set_start(uint8_t ch ) static void __attribute__((unused)) FrSkyX_set_start(uint8_t ch )
{ {
CC2500_Strobe(CC2500_SIDLE); CC2500_Strobe(CC2500_SIDLE);

View File

@ -3,7 +3,6 @@
#define FREQ_MAP_SIZE 29 #define FREQ_MAP_SIZE 29
uint8_t FrSkyR9_step = 1;
uint32_t FrSkyR9_freq_map[FREQ_MAP_SIZE]; uint32_t FrSkyR9_freq_map[FREQ_MAP_SIZE];
enum { enum {
@ -24,10 +23,10 @@ static void __attribute__((unused)) FrSkyR9_build_freq()
debugln("F%d=%lu", i, FrSkyR9_freq_map[i]); debugln("F%d=%lu", i, FrSkyR9_freq_map[i]);
start_freq+=0x7A000; start_freq+=0x7A000;
} }
// Last two frequencies determined by FrSkyR9_step // Last two frequencies determined by FrSkyX_chanskip
FrSkyR9_freq_map[FREQ_MAP_SIZE-2] = FrSkyR9_freq_map[FrSkyR9_step]; FrSkyR9_freq_map[FREQ_MAP_SIZE-2] = FrSkyR9_freq_map[FrSkyX_chanskip];
debugln("F%d=%lu", FREQ_MAP_SIZE-2, FrSkyR9_freq_map[FREQ_MAP_SIZE-2]); debugln("F%d=%lu", FREQ_MAP_SIZE-2, FrSkyR9_freq_map[FREQ_MAP_SIZE-2]);
FrSkyR9_freq_map[FREQ_MAP_SIZE-1] = FrSkyR9_freq_map[FrSkyR9_step+1]; FrSkyR9_freq_map[FREQ_MAP_SIZE-1] = FrSkyR9_freq_map[FrSkyX_chanskip+1];
debugln("F%d=%lu", FREQ_MAP_SIZE-1, FrSkyR9_freq_map[FREQ_MAP_SIZE-1]); debugln("F%d=%lu", FREQ_MAP_SIZE-1, FrSkyR9_freq_map[FREQ_MAP_SIZE-1]);
hopping_frequency_no = 0; hopping_frequency_no = 0;
} }
@ -41,7 +40,7 @@ static void __attribute__((unused)) FrSkyR9_build_packet()
//Hopping //Hopping
packet[3] = hopping_frequency_no; // current channel index packet[3] = hopping_frequency_no; // current channel index
packet[4] = FrSkyR9_step; // step size and last 2 channels start index packet[4] = FrSkyX_chanskip; // step size and last 2 channels start index
//RX number //RX number
packet[5] = RX_num; // receiver number from OpenTX packet[5] = RX_num; // receiver number from OpenTX
@ -81,9 +80,9 @@ uint16_t initFrSkyR9()
{ {
set_rx_tx_addr(MProtocol_id_master); set_rx_tx_addr(MProtocol_id_master);
//FrSkyR9_step //FrSkyX_chanskip
FrSkyR9_step = 1 + (random(0xfefefefe) % 24); FrSkyX_chanskip = 1 + (random(0xfefefefe) % 24);
debugln("Step=%d", FrSkyR9_step); debugln("Step=%d", FrSkyX_chanskip);
//Frequency table //Frequency table
FrSkyR9_build_freq(); FrSkyR9_build_freq();
@ -142,7 +141,7 @@ uint16_t FrSkyR9_callback()
if(bind && IS_BIND_DONE) if(bind && IS_BIND_DONE)
FrSkyR9_build_freq(); FrSkyR9_build_freq();
bind=IS_BIND_IN_PROGRESS; bind=IS_BIND_IN_PROGRESS;
hopping_frequency_no = (hopping_frequency_no + FrSkyR9_step) % FREQ_MAP_SIZE; hopping_frequency_no = (hopping_frequency_no + FrSkyX_chanskip) % FREQ_MAP_SIZE;
SX1276_SetFrequency(FrSkyR9_freq_map[hopping_frequency_no]); // set current center frequency SX1276_SetFrequency(FrSkyR9_freq_map[hopping_frequency_no]); // set current center frequency
//Set power //Set power
// max power: 15dBm (10.8 + 0.6 * MaxPower [dBm]) // max power: 15dBm (10.8 + 0.6 * MaxPower [dBm])

View File

@ -201,6 +201,7 @@
#define CC2500_INSTALLED #define CC2500_INSTALLED
#define NRF24L01_INSTALLED #define NRF24L01_INSTALLED
#define SX1276_INSTALLED #define SX1276_INSTALLED
#undef ENABLE_PPM
#endif #endif
//Make sure protocols are selected correctly //Make sure protocols are selected correctly