Adding watchdog to host serial port

pull/14/head
Andy CA6JAU 8 years ago
parent a570b43f19
commit c74b374636

@ -266,3 +266,7 @@ void CIO::resetWatchdog()
m_watchdog = 0U; m_watchdog = 0U;
} }
uint32_t CIO::getWatchdog()
{
return m_watchdog;
}

@ -81,6 +81,7 @@ public:
void interrupt2(void); void interrupt2(void);
#endif #endif
void resetWatchdog(void); void resetWatchdog(void);
uint32_t getWatchdog(void);
#if defined(BIDIR_DATA_PIN) #if defined(BIDIR_DATA_PIN)
void Data_dir_out(bool dir); void Data_dir_out(bool dir);

@ -406,6 +406,10 @@ void CSerialPort::process()
m_ptr = 1U; m_ptr = 1U;
m_len = 0U; m_len = 0U;
} }
else {
m_ptr = 0U;
m_len = 0U;
}
} else if (m_ptr == 1U) { } else if (m_ptr == 1U) {
// Handle the frame length // Handle the frame length
m_len = m_buffer[m_ptr] = c; m_len = m_buffer[m_ptr] = c;
@ -645,6 +649,11 @@ void CSerialPort::process()
} }
} }
if (io.getWatchdog() >= 48000U) {
m_ptr = 0U;
m_len = 0U;
}
#if defined(SERIAL_REPEATER) || defined(SERIAL_REPEATER_USART1) #if defined(SERIAL_REPEATER) || defined(SERIAL_REPEATER_USART1)
// Drain any incoming serial data // Drain any incoming serial data
while (availableInt(3U)) while (availableInt(3U))

Loading…
Cancel
Save

Powered by TurnKey Linux.