mirror of https://github.com/g4klx/MMDVM.git
Change the handling of the mode LEDs.
This commit is contained in:
parent
fb85505433
commit
632ddda68b
38
IO.cpp
38
IO.cpp
|
@ -220,7 +220,7 @@ void CIO::start()
|
||||||
|
|
||||||
m_started = true;
|
m_started = true;
|
||||||
|
|
||||||
setMode();
|
setMode(STATE_IDLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CIO::process()
|
void CIO::process()
|
||||||
|
@ -232,8 +232,7 @@ void CIO::process()
|
||||||
if (m_modemState == STATE_DSTAR || m_modemState == STATE_DMR || m_modemState == STATE_YSF || m_modemState == STATE_P25 || m_modemState == STATE_NXDN || m_modemState == STATE_POCSAG) {
|
if (m_modemState == STATE_DSTAR || m_modemState == STATE_DMR || m_modemState == STATE_YSF || m_modemState == STATE_P25 || m_modemState == STATE_NXDN || m_modemState == STATE_POCSAG) {
|
||||||
if (m_modemState == STATE_DMR && m_tx)
|
if (m_modemState == STATE_DMR && m_tx)
|
||||||
dmrTX.setStart(false);
|
dmrTX.setStart(false);
|
||||||
m_modemState = STATE_IDLE;
|
setMode(STATE_IDLE);
|
||||||
setMode();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
m_watchdog = 0U;
|
m_watchdog = 0U;
|
||||||
|
@ -516,17 +515,34 @@ void CIO::setADCDetection(bool detect)
|
||||||
m_detect = detect;
|
m_detect = detect;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CIO::setMode()
|
void CIO::setMode(MMDVM_STATE state)
|
||||||
{
|
{
|
||||||
|
if (state == m_modemState)
|
||||||
|
return;
|
||||||
|
|
||||||
#if defined(MODE_LEDS)
|
#if defined(MODE_LEDS)
|
||||||
setDStarInt(m_modemState == STATE_DSTAR);
|
switch (m_modemState) {
|
||||||
setDMRInt(m_modemState == STATE_DMR);
|
case STATE_DSTAR: setDStarInt(false); break;
|
||||||
setYSFInt(m_modemState == STATE_YSF);
|
case STATE_DMR: setDMRInt(false); break;
|
||||||
setP25Int(m_modemState == STATE_P25);
|
case STATE_YSF: setYSFInt(false); break;
|
||||||
setNXDNInt(m_modemState == STATE_NXDN);
|
case STATE_P25: setP25Int(false); break;
|
||||||
setPOCSAGInt(m_modemState == STATE_POCSAG);
|
case STATE_NXDN: setNXDNInt(false); break;
|
||||||
setFMInt(m_modemState == STATE_FM);
|
case STATE_POCSAG: setPOCSAGInt(false); break;
|
||||||
|
case STATE_FM: setFMInt(false); break;
|
||||||
|
}
|
||||||
|
|
||||||
|
switch (state) {
|
||||||
|
case STATE_DSTAR: setDStarInt(true); break;
|
||||||
|
case STATE_DMR: setDMRInt(true); break;
|
||||||
|
case STATE_YSF: setYSFInt(true); break;
|
||||||
|
case STATE_P25: setP25Int(true); break;
|
||||||
|
case STATE_NXDN: setNXDNInt(true); break;
|
||||||
|
case STATE_POCSAG: setPOCSAGInt(true); break;
|
||||||
|
case STATE_FM: setFMInt(true); break;
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
m_modemState = state;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CIO::setParameters(bool rxInvert, bool txInvert, bool pttInvert, uint8_t rxLevel, uint8_t cwIdTXLevel, uint8_t dstarTXLevel, uint8_t dmrTXLevel, uint8_t ysfTXLevel, uint8_t p25TXLevel, uint8_t nxdnTXLevel, uint8_t pocsagTXLevel, uint8_t fmTXLevel, int16_t txDCOffset, int16_t rxDCOffset, bool useCOSAsLockout)
|
void CIO::setParameters(bool rxInvert, bool txInvert, bool pttInvert, uint8_t rxLevel, uint8_t cwIdTXLevel, uint8_t dstarTXLevel, uint8_t dmrTXLevel, uint8_t ysfTXLevel, uint8_t p25TXLevel, uint8_t nxdnTXLevel, uint8_t pocsagTXLevel, uint8_t fmTXLevel, int16_t txDCOffset, int16_t rxDCOffset, bool useCOSAsLockout)
|
||||||
|
|
2
IO.h
2
IO.h
|
@ -38,7 +38,7 @@ public:
|
||||||
|
|
||||||
void setDecode(bool dcd);
|
void setDecode(bool dcd);
|
||||||
void setADCDetection(bool detect);
|
void setADCDetection(bool detect);
|
||||||
void setMode();
|
void setMode(MMDVM_STATE state);
|
||||||
|
|
||||||
void interrupt();
|
void interrupt();
|
||||||
|
|
||||||
|
|
|
@ -103,7 +103,7 @@ const uint8_t MMDVM_DEBUG5 = 0xF5U;
|
||||||
#define HW_TYPE "MMDVM"
|
#define HW_TYPE "MMDVM"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define DESCRIPTION "20200714 (D-Star/DMR/System Fusion/P25/NXDN/POCSAG/FM)"
|
#define DESCRIPTION "20200831 (D-Star/DMR/System Fusion/P25/NXDN/POCSAG/FM)"
|
||||||
|
|
||||||
#if defined(GITVERSION)
|
#if defined(GITVERSION)
|
||||||
#define concat(h, a, b, c) h " " a " " b " GitID #" c ""
|
#define concat(h, a, b, c) h " " a " " b " GitID #" c ""
|
||||||
|
@ -568,9 +568,7 @@ void CSerialPort::setMode(MMDVM_STATE modemState)
|
||||||
|
|
||||||
cwIdTX.reset();
|
cwIdTX.reset();
|
||||||
|
|
||||||
m_modemState = modemState;
|
io.setMode(modemState);
|
||||||
|
|
||||||
io.setMode();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSerialPort::start()
|
void CSerialPort::start()
|
||||||
|
|
Loading…
Reference in New Issue