CS7000: implemented transmission of CTCSS squelch tones
This commit is contained in:
parent
f883d4e7e1
commit
832b933983
|
|
@ -463,6 +463,7 @@ cs7000_src = ['platform/drivers/NVM/nvmem_CS7000.c',
|
|||
'platform/drivers/stubs/cps_io_stub.c',
|
||||
'platform/drivers/baseband/AK2365A.c',
|
||||
'platform/drivers/baseband/SKY72310.c',
|
||||
'platform/drivers/baseband/HR_C6000.cpp',
|
||||
'platform/drivers/baseband/HR_Cx000.cpp',
|
||||
'platform/drivers/baseband/HR_C6000_CS7000.cpp',
|
||||
'platform/drivers/baseband/radio_CS7000.cpp',
|
||||
|
|
|
|||
|
|
@ -244,14 +244,25 @@ void radio_enableTx()
|
|||
{
|
||||
case OPMODE_FM:
|
||||
{
|
||||
TxAudioSource source = TxAudioSource::MIC;
|
||||
// WARNING: HR_C6000 quirk!
|
||||
// If the CTCSS tone is disabled immediately after TX stop, the IC
|
||||
// stops outputting demodulated audio until a reset. This may be
|
||||
// something related to the "tail tone elimination" function. To
|
||||
// overcome this, the CTCSS tone is enabled/disabled before starting
|
||||
// a new transmission.
|
||||
if(config->txToneEn)
|
||||
C6000.setTxCtcss(config->txTone, 0x20);
|
||||
else
|
||||
C6000.disableCtcss();
|
||||
|
||||
FmConfig cfg = (config->bandwidth == BW_12_5) ? FmConfig::BW_12p5kHz
|
||||
: FmConfig::BW_25kHz;
|
||||
C6000.startAnalogTx(source, cfg | FmConfig::PREEMPH_EN);
|
||||
C6000.startAnalogTx(TxAudioSource::MIC, cfg | FmConfig::PREEMPH_EN);
|
||||
}
|
||||
break;
|
||||
|
||||
case OPMODE_M17:
|
||||
C6000.disableCtcss();
|
||||
C6000.startAnalogTx(TxAudioSource::LINE_IN, FmConfig::BW_25kHz);
|
||||
break;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue