PureBasic - форум

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » PureBasic - форум » Вопросы по PureBasic » Как посчитать CRC8 для 10 байт?


Как посчитать CRC8 для 10 байт?

Сообщений 1 страница 3 из 3

1

Доброго всем дня!
Как посчитать CRC8 для 10 байт? в самом ПБ нет такой возможности, готового кода в Сети не нашел.
Последний раз писал для ПК на ПБ году в 2014...

и еще, заодно: как преобразовать String (номер устройства 1-16) в один байт? ValD не так как-то работает :(
или сразу String (0-65535) в два байта (младший+старший)?

0

2

FastCRC module https://www.purebasic.fr/english/viewtopic.php?t=73462

Код:
UseModule FastCRC
*Mem = AllocateMemory(10)
RandomData(*Mem, 10)
CRC.q = FastCRC(#CRC8, *Mem, 10)
Debug HexCRC(CRC, 8)
Код:
Debug Hex(Val("16"))

0

3

Александр Д. написал(а):

Как посчитать CRC8

Термометр на DS18B20 (подключение через COM порт) процедура OW_GetCRC файла OWire_Module.pbi.

Александр Д. написал(а):

как преобразовать String (номер устройства 1-16) в один байт?

Если речь про диапазон чисел от 1 до 16, то они уже в числовой форме. Если в строковой форме тогда функция Val преобразует строку в число. Если в другом виде, нужен пример исходного значения.

0


Вы здесь » PureBasic - форум » Вопросы по PureBasic » Как посчитать CRC8 для 10 байт?