DMR trunking patches to DMRTX and SerialPort

This commit is contained in:
adrian
2026-04-18 11:29:48 +03:00
parent 3fd84d5ed4
commit a696fd454c
3 changed files with 61 additions and 7 deletions
+6
View File
@@ -1,6 +1,7 @@
/*
* Copyright (C) 2015,2016,2017,2020 by Jonathan Naylor G4KLX
* Copyright (C) 2016 by Colin Durbridge G4EML
* Copyright (C) 2026 by Adrian Musceac YO8RZZ
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -45,10 +46,12 @@ public:
uint8_t writeData2(const uint8_t* data, uint16_t length);
uint8_t writeShortLC(const uint8_t* data, uint16_t length);
uint8_t writeAloha(const uint8_t* data, uint16_t length);
uint8_t writeAbort(const uint8_t* data, uint16_t length);
void setStart(bool start);
void setCal(bool start);
void setTrunking(bool trunking);
void process();
@@ -67,6 +70,7 @@ private:
q15_t m_modState[16U]; // blockSize + phaseLength - 1, 4 + 9 - 1 plus some spare
DMRTXSTATE m_state;
uint8_t m_idle[DMR_FRAME_LENGTH_BYTES];
uint8_t m_aloha[DMR_FRAME_LENGTH_BYTES];
uint8_t m_cachPtr;
uint8_t m_shortLC[12U];
uint8_t m_newShortLC[12U];
@@ -77,6 +81,8 @@ private:
uint32_t m_frameCount;
uint32_t m_abortCount[2U];
bool m_abort[2U];
bool m_controlChannel;
bool m_trunking;
void createData(uint8_t slotIndex);
void createCACH(uint8_t txSlotIndex, uint8_t rxSlotIndex);