This commit is contained in:
127
radio.h
127
radio.h
@@ -24,7 +24,7 @@
|
||||
#include "frequencies.h"
|
||||
|
||||
enum {
|
||||
RADIO_CHANNEL_UP = 0x01u,
|
||||
RADIO_CHANNEL_UP = 0x01u,
|
||||
RADIO_CHANNEL_DOWN = 0xFFu,
|
||||
};
|
||||
|
||||
@@ -42,8 +42,7 @@ enum PTT_ID_t {
|
||||
};
|
||||
typedef enum PTT_ID_t PTT_ID_t;
|
||||
|
||||
enum VfoState_t
|
||||
{
|
||||
enum VfoState_t {
|
||||
VFO_STATE_NORMAL = 0,
|
||||
VFO_STATE_BUSY,
|
||||
VFO_STATE_BAT_LOW,
|
||||
@@ -70,18 +69,16 @@ typedef enum {
|
||||
|
||||
extern const char gModulationStr[MODULATION_UKNOWN][4];
|
||||
|
||||
typedef struct
|
||||
{
|
||||
uint32_t Frequency;
|
||||
typedef struct {
|
||||
uint32_t Frequency;
|
||||
DCS_CodeType_t CodeType;
|
||||
uint8_t Code;
|
||||
uint8_t Padding[2];
|
||||
uint8_t Code;
|
||||
uint8_t Padding[2];
|
||||
} FREQ_Config_t;
|
||||
|
||||
typedef struct VFO_Info_t
|
||||
{
|
||||
FREQ_Config_t freq_config_RX;
|
||||
FREQ_Config_t freq_config_TX;
|
||||
typedef struct VFO_Info_t {
|
||||
FREQ_Config_t freq_config_RX;
|
||||
FREQ_Config_t freq_config_TX;
|
||||
|
||||
// this is for a purpose of the FrequencyReverse function
|
||||
// it points to freq_config_RX normally and to freq_config_TX if reverse function is active
|
||||
@@ -92,81 +89,97 @@ typedef struct VFO_Info_t
|
||||
// it points to freq_config_TX normally and to freq_config_RX if reverse function is active
|
||||
FREQ_Config_t *pTX;
|
||||
|
||||
uint32_t TX_OFFSET_FREQUENCY;
|
||||
uint16_t StepFrequency;
|
||||
uint32_t TX_OFFSET_FREQUENCY;
|
||||
uint16_t StepFrequency;
|
||||
|
||||
uint8_t CHANNEL_SAVE;
|
||||
uint8_t CHANNEL_SAVE;
|
||||
|
||||
uint8_t TX_OFFSET_FREQUENCY_DIRECTION;
|
||||
uint8_t TX_OFFSET_FREQUENCY_DIRECTION;
|
||||
|
||||
uint8_t SquelchOpenRSSIThresh;
|
||||
uint8_t SquelchOpenNoiseThresh;
|
||||
uint8_t SquelchCloseGlitchThresh;
|
||||
uint8_t SquelchCloseRSSIThresh;
|
||||
uint8_t SquelchCloseNoiseThresh;
|
||||
uint8_t SquelchOpenGlitchThresh;
|
||||
uint8_t SquelchOpenRSSIThresh;
|
||||
uint8_t SquelchOpenNoiseThresh;
|
||||
uint8_t SquelchCloseGlitchThresh;
|
||||
uint8_t SquelchCloseRSSIThresh;
|
||||
uint8_t SquelchCloseNoiseThresh;
|
||||
uint8_t SquelchOpenGlitchThresh;
|
||||
|
||||
STEP_Setting_t STEP_SETTING;
|
||||
uint8_t OUTPUT_POWER;
|
||||
uint8_t TXP_CalculatedSetting;
|
||||
bool FrequencyReverse;
|
||||
uint8_t OUTPUT_POWER;
|
||||
uint8_t TXP_CalculatedSetting;
|
||||
bool FrequencyReverse;
|
||||
|
||||
uint8_t SCRAMBLING_TYPE;
|
||||
uint8_t CHANNEL_BANDWIDTH;
|
||||
uint16_t SCRAMBLING_TYPE;
|
||||
uint8_t CHANNEL_BANDWIDTH;
|
||||
|
||||
uint8_t SCANLIST1_PARTICIPATION;
|
||||
uint8_t SCANLIST2_PARTICIPATION;
|
||||
uint8_t SCANLIST3_PARTICIPATION;
|
||||
uint8_t SCANLIST1_PARTICIPATION;
|
||||
uint8_t SCANLIST2_PARTICIPATION;
|
||||
uint8_t SCANLIST3_PARTICIPATION;
|
||||
|
||||
uint8_t Band;
|
||||
uint8_t Band;
|
||||
#ifdef ENABLE_DTMF_CALLING
|
||||
uint8_t DTMF_DECODING_ENABLE;
|
||||
#endif
|
||||
PTT_ID_t DTMF_PTT_ID_TX_MODE;
|
||||
PTT_ID_t DTMF_PTT_ID_TX_MODE;
|
||||
|
||||
uint8_t BUSY_CHANNEL_LOCK;
|
||||
uint8_t BUSY_CHANNEL_LOCK;
|
||||
|
||||
ModulationMode_t Modulation;
|
||||
ModulationMode_t Modulation;
|
||||
|
||||
uint8_t Compander;
|
||||
uint8_t Compander;
|
||||
|
||||
char Name[16];
|
||||
char Name[16];
|
||||
} VFO_Info_t;
|
||||
|
||||
// Settings of the main VFO that is selected by the user
|
||||
// The pointer follows gEeprom.TX_VFO index
|
||||
extern VFO_Info_t *gTxVfo;
|
||||
extern VFO_Info_t *gTxVfo;
|
||||
|
||||
// Settings of the actual VFO that is now used for RX,
|
||||
// It is being alternated by dual watch, and flipped by crossband
|
||||
// The pointer follows gEeprom.RX_VFO
|
||||
extern VFO_Info_t *gRxVfo;
|
||||
extern VFO_Info_t *gRxVfo;
|
||||
|
||||
// Equal to gTxVfo unless dual watch changes it on incomming transmition (this can only happen when XB off and DW on)
|
||||
extern VFO_Info_t *gCurrentVfo;
|
||||
extern VFO_Info_t *gCurrentVfo;
|
||||
|
||||
extern DCS_CodeType_t gCurrentCodeType;
|
||||
|
||||
extern VfoState_t VfoState[2];
|
||||
extern VfoState_t VfoState[2];
|
||||
|
||||
bool RADIO_CheckValidChannel(uint16_t channel, bool checkScanList, uint8_t scanList);
|
||||
|
||||
uint8_t RADIO_FindNextChannel(uint8_t ChNum, int8_t Direction, bool bCheckScanList, uint8_t RadioNum);
|
||||
|
||||
void RADIO_InitInfo(VFO_Info_t *pInfo, const uint8_t ChannelSave, const uint32_t Frequency);
|
||||
|
||||
void RADIO_ConfigureChannel(const unsigned int VFO, const unsigned int configure);
|
||||
|
||||
void RADIO_ConfigureSquelchAndOutputPower(VFO_Info_t *pInfo);
|
||||
|
||||
void RADIO_ApplyOffset(VFO_Info_t *pInfo);
|
||||
|
||||
void RADIO_SelectVfos(void);
|
||||
|
||||
void RADIO_SetupRegisters(bool switchToForeground);
|
||||
|
||||
bool RADIO_CheckValidChannel(uint16_t channel, bool checkScanList, uint8_t scanList);
|
||||
uint8_t RADIO_FindNextChannel(uint8_t ChNum, int8_t Direction, bool bCheckScanList, uint8_t RadioNum);
|
||||
void RADIO_InitInfo(VFO_Info_t *pInfo, const uint8_t ChannelSave, const uint32_t Frequency);
|
||||
void RADIO_ConfigureChannel(const unsigned int VFO, const unsigned int configure);
|
||||
void RADIO_ConfigureSquelchAndOutputPower(VFO_Info_t *pInfo);
|
||||
void RADIO_ApplyOffset(VFO_Info_t *pInfo);
|
||||
void RADIO_SelectVfos(void);
|
||||
void RADIO_SetupRegisters(bool switchToForeground);
|
||||
#ifdef ENABLE_NOAA
|
||||
void RADIO_ConfigureNOAA(void);
|
||||
void RADIO_ConfigureNOAA(void);
|
||||
#endif
|
||||
void RADIO_SetTxParameters(void);
|
||||
void RADIO_SetupAGC(bool listeningAM, bool disable);
|
||||
void RADIO_SetModulation(ModulationMode_t modulation);
|
||||
void RADIO_SetVfoState(VfoState_t State);
|
||||
void RADIO_PrepareTX(void);
|
||||
void RADIO_SendCssTail(void);
|
||||
void RADIO_PrepareCssTX(void);
|
||||
void RADIO_SendEndOfTransmission(void);
|
||||
|
||||
void RADIO_SetTxParameters(void);
|
||||
|
||||
void RADIO_SetupAGC(bool listeningAM, bool disable);
|
||||
|
||||
void RADIO_SetModulation(ModulationMode_t modulation);
|
||||
|
||||
void RADIO_SetVfoState(VfoState_t State);
|
||||
|
||||
void RADIO_PrepareTX(void);
|
||||
|
||||
void RADIO_SendCssTail(void);
|
||||
|
||||
void RADIO_PrepareCssTX(void);
|
||||
|
||||
void RADIO_SendEndOfTransmission(void);
|
||||
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user