kopia lustrzana https://github.com/mobilinkd/tnc3-firmware
Update HDLC encoder to emit IDLE bits (all 0s) during TX delay.
rodzic
9c9d3afb79
commit
bb8ef68e23
|
@ -25,6 +25,7 @@ using namespace mobilinkd::libafsk;
|
|||
|
||||
struct Encoder {
|
||||
|
||||
static const uint8_t IDLE = 0x00;
|
||||
static const uint8_t FLAG = 0x7E;
|
||||
|
||||
enum class state_type {
|
||||
|
@ -71,6 +72,7 @@ struct Encoder {
|
|||
// See if we have back-to-back frames.
|
||||
evt = osMessagePeek(input_, 0);
|
||||
if (evt.status != osEventMessage) {
|
||||
send_raw(IDLE);
|
||||
send_delay_ = true;
|
||||
if (!duplex_) {
|
||||
osMessagePut(audioInputQueueHandle, audio::DEMODULATOR,
|
||||
|
@ -192,8 +194,9 @@ struct Encoder {
|
|||
void send_delay() {
|
||||
const size_t tmp = (tx_delay_ * 3) / 2;
|
||||
for (size_t i = 0; i != tmp; i++) {
|
||||
send_raw(FLAG);
|
||||
send_raw(IDLE);
|
||||
}
|
||||
send_raw(FLAG);
|
||||
}
|
||||
|
||||
void send_fcs(uint16_t fcs) {
|
||||
|
|
Ładowanie…
Reference in New Issue