Small updates and a timing improvement.

This commit is contained in:
Jonathan Naylor 2016-02-19 06:21:40 +00:00
parent f0d63c31c3
commit ac82c4f6bc
4 changed files with 49 additions and 24 deletions

21
CRC.cpp
View file

@ -166,6 +166,27 @@ unsigned char CCRC::encodeEightBit(const unsigned char *in, unsigned int length)
return crc;
}
void CCRC::addCCITT162(unsigned char *in, unsigned int length)
{
assert(in != NULL);
assert(length > 2U);
union {
uint16_t crc16;
uint8_t crc8[2U];
};
crc16 = 0U;
for (unsigned i = 0U; i < (length - 2U); i++)
crc16 = (uint16_t(crc8[0U]) << 8) ^ CCITT16_TABLE2[crc8[1U] ^ in[i]];
crc16 = ~crc16;
in[length - 1U] = crc8[0U];
in[length - 2U] = crc8[1U];
}
bool CCRC::checkCCITT162(const unsigned char *in, unsigned int length)
{
assert(in != NULL);

1
CRC.h
View file

@ -26,6 +26,7 @@ public:
static void encodeFiveBit(const bool* in, unsigned int& tcrc);
static void addCCITT161(unsigned char* in, unsigned int length);
static void addCCITT162(unsigned char* in, unsigned int length);
static bool checkCCITT161(const unsigned char* in, unsigned int length);
static bool checkCCITT162(const unsigned char* in, unsigned int length);

View file

@ -326,19 +326,22 @@ int CMMDVMHost::run()
}
unsigned int ms = stopWatch.elapsed();
stopWatch.start();
m_modem->clock(ms);
m_modeTimer.clock(ms);
if (dstar != NULL)
dstar->clock(ms);
if (dmr != NULL)
dmr->clock(ms);
if (ysf != NULL)
ysf->clock(ms);
if (m_dstarNetwork != NULL)
m_dstarNetwork->clock(ms);
if (m_dmrNetwork != NULL)
m_dmrNetwork->clock(ms);
stopWatch.start();
dmrBeaconTimer.clock(ms);
if (dmrBeaconTimer.isRunning() && dmrBeaconTimer.hasExpired()) {

View file

@ -19,6 +19,6 @@
#if !defined(VERSION_H)
#define VERSION_H
const char* VERSION = "20160218";
const char* VERSION = "20160219";
#endif