Перейти к блогу GetChip.net - блог        JilTE[1] - в разработке     Модификации устройств - модификации

 
Текущее время: 29 апр 2024, 09:56

Часовой пояс: UTC + 3 часа [ Летнее время ]



Ответить
Имя пользователя:
Заголовок:
Текст сообщения:
Введите текст вашего сообщения. Длина сообщения в символах не более: 60000

Размер шрифта:
Цвет шрифта
Настройки:
BBCode ВКЛЮЧЁН
[img] ВКЛЮЧЁН
[flash] ВЫКЛЮЧЕН
[url] ВКЛЮЧЁН
Смайлики ВЫКЛЮЧЕНЫ
Отключить в этом сообщении BBCode
Не преобразовывать адреса URL в ссылки
Анти-спам
Анти-спам:
Выполните задание
   

Обзор темы - CRC16 в Algoitithm Builder
Автор Сообщение
  Заголовок сообщения:  Re: CRC16 в Algoitithm Builder  
Цитата
Да ничего не изменил (в плане алгоритма побитного вычисления ). Согласно http://www.owen.ru/forum/showthread.php?t=15588 (3й пост) для каждого полинома есть "обратный" , в зависимости от того, куда "двигаем". Основные мои изыскания были порождены тем, что
1. В литературе по моему проекту ( пакет AX.25) ,были разные сведения о полиноме . Были варианты x16+x15+X2+1 и x16+x12+x5+1. Верным оказался второй вариант, согласно ISO 3309-98
2. В конце подсчёта CRC16 я не делалX ^ $FFFF
3. В букваре по протоколу указывалось, что CRC16 вводится в тело сообщения старшим битом вперёд. Так и делал. Но оказалось, что в конце вычисления CRC в Xl лежит старший байт, а в Xh- младший.Причём если в конце расчёта получилось CRC=$0965, то передачу CRC надо начиать с младшего бита пятёрки. Разбираться где идёт "переворот" не стал, подкорректировал вывод , всё заработало.
Рабочий вариант
sshot-3.png
sshot-3.png [ 5.47 КБ | Просмотров: 8210 ]
Сообщение Добавлено: 08 ноя 2016, 09:33
  Заголовок сообщения:  Re: CRC16 в Algoitithm Builder  
Цитата
Что изменил?
Сообщение Добавлено: 08 ноя 2016, 01:33
  Заголовок сообщения:  Re: CRC16 в Algoitithm Builder  
Цитата
Спасибо.
"Конструкция" из первого поста тоже заработала. Дело было в том, что несколько туманно описан порядок передачи CRC в тело сообщения.
Но последний предложенный вариант весьма прост, надо попробовать
Сообщение Добавлено: 08 ноя 2016, 00:09
  Заголовок сообщения:  Re: CRC16 в Algoitithm Builder  
Цитата
Я для хеширования ИК-посылки использую CRC16 (полином 8005)
Зайдите в шаблоны http://www.getchip.net/templates/
модуль IR-Detect - по аналогии сделаете для своего полинома.


Вложения:
CRC16.pdf [97.81 КБ]
Скачиваний: 672
sshot-1.png
sshot-1.png [ 5.15 КБ | Просмотров: 8220 ]
Сообщение Добавлено: 07 ноя 2016, 22:57
  Заголовок сообщения:  Re: CRC16 в Algoitithm Builder  
Цитата
Вот откуда подсмотрел viewtopic.php?f=18&t=162

sshot-2.png
sshot-2.png [ 6.05 КБ | Просмотров: 8227 ]

Тут такая- же конструкция...и работает
Не совсем понимаю, почему
CRC_Value ! #b10000000
CRC_Value ^ #b00001100
нельзя заменить на
CRC_Value ^ #b10001100
ибо после команды CRC_Value>> в старшем бите все равно "0"
.....
Но это уже 2й вопрос
У меня тоже биты засылаются с младшего
Сообщение Добавлено: 07 ноя 2016, 13:52
  Заголовок сообщения:  Re: CRC16 в Algoitithm Builder  
Цитата
Я плохо разбираюсь в подсчёте CRC, но мне что-то подсказывает, что ошибка может быть здесь…
sshot-2.png
sshot-2.png [ 8.97 КБ | Просмотров: 8230 ]

Ну и биты засылаются начиная с младшего разряда принятого кода?
Сообщение Добавлено: 07 ноя 2016, 11:55
  Заголовок сообщения:  CRC16 в Algoitithm Builder  
Цитата
Необходимо посчитать CRC16 посылки. Полином X16+X15+X2+1. Подсмотрел здесь в теме алгоритм побитовой CRC8. По аналогии сделал так.
sshot-2.png
sshot-2.png [ 4.36 КБ | Просмотров: 8235 ]

Но приёмник не пропускает посылку. Дело именно в CRC. Подскажите, правильно ли организован алгоритм подсчёта.
Сообщение Добавлено: 07 ноя 2016, 10:47

Часовой пояс: UTC + 3 часа [ Летнее время ]


Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB