BRUTEFORCE_CHECK

This commit is contained in:
DashyFox 2024-04-22 12:52:41 +03:00
parent 5cc4555bac
commit 16a626db22
2 changed files with 3 additions and 3 deletions

View File

@ -540,14 +540,14 @@ void IR_DecoderRaw::writeToBuffer(bool bit)
#ifdef BRUTEFORCE_CHECK
if (!isAvailable) // Исправление первого бита // Очень большая затычка...
for (size_t i = 0; i < min(packSize - crcBytes*2, dataByteSizeMax); ++i)
for (size_t i = 0; i < min(uint16_t(packSize - crcBytes*2U), uint16_t(dataByteSizeMax)); ++i)
{
for (int j = 0; j < 8; ++j)
{
// инвертируем бит
dataBuffer[i] ^= 1 << j;
isAvailable = crcCheck(packSize - crcBytes, crcValue);
isAvailable = crcCheck(min(uint16_t(packSize - crcBytes), uint16_t(dataByteSizeMax - 1U)), crcValue);
// обратно инвертируем бит в исходное состояние
if (isAvailable)

View File

@ -101,7 +101,7 @@ customByte - контрольная сумма принятых данных п
/////////////////////////////////////////////////////////////////////////////////////*/
typedef uint16_t crc_t;
// #define BRUTEFORCE_CHECK // Перепроверяет пакет на 1 битные ошибки //TODO: зависает
#define BRUTEFORCE_CHECK // Перепроверяет пакет на 1 битные ошибки //TODO: зависает
#define bytePerPack 16 // колличество байтов в пакете
#ifndef freeFrec
#define freeFrec false