void SX1276Init( void )
{
    // Initialize FSK and LoRa registers structure
    SX1276 = ( tSX1276* )SX1276Regs;
    SX1276LR = ( tSX1276LR* )SX1276Regs;

    SX1276InitIo( );
    
    SX1276Reset( );

    // REMARK: After radio reset the default modem is FSK

#if ( LORA == 0 ) 

    LoRaOn = false;
    SX1276SetLoRaOn( LoRaOn );
    // Initialize FSK modem
    SX1276FskInit( );

#else

    LoRaOn = true;
    SX1276SetLoRaOn( LoRaOn );
    // Initialize LoRa modem
    SX1276LoRaInit( );
    
#endif

}
Esempio n. 2
0
/*****************************************************************************
 Prototype    : SX1276Init
 Description  : none
 Input        : void  
 Output       : None
 Return Value : 
 Date         : 2014/3/15
 Author       : Barry
*****************************************************************************/
void SX1276Init( void )
{
  /* Initialize FSK and LoRa registers structure */
  /* 这是一个很好的初始化结构体的技巧,把数组名强制转化为指向结构体的指针 */
  #if defined(SX1276_FSK)
  SX1276 = ( tSX1276* )SX1276Regs;
  #endif

  #if defined(SX1276_LORA)
  SX1276LR = ( tSX1276LR* )SX1276Regs;
  #endif
  
  SX1276Reset( );
  /* in order to compatible FSK,change LORA to bool variable */
  if (LORA)
  {
	#if defined(SX1276_LORA)
	LoRaOn = true;
	LoRaOnState = false;
	SX1276SetLoRaOn( LoRaOn );
	/* Initialize LoRa modem */
	SX1276LoRaInit();
	#endif
  }
  else
  {
	#if defined(SX1276_FSK)
	LoRaOn = false;
	LoRaOnState = true;
	SX1276SetLoRaOn( LoRaOn );
	/* Initialize FSK modem */
	SX1276FskInit( );
	#endif
  }
}