Обсуждаем контроллеры компании Atmel.
Ответить

Re: Проверка целостности данных в SPI

Вт ноя 14, 2017 21:17:52

Один бит чётности не решает проблему. Ошибка может быть двойная...

ade7913 - результат с crc суммой. Не нравится? Можете оформить блок ацп как отдельный экранированный модуль со своим собственным МК, дамами и преферансом. Можете взять МК от AD со встроенным ацп 24 бита (видел такие в тензомодулях ОВЕН). Вариантов вагон и маленькая тележка. Вопрос кошелька.
Я же говорю - у меня на плате 4 ацп по спи опрашиваются 50 раз в секунду. На плате релюхи щелкают, это всё стоит в щите на заводе и лупашит круглыми сутками. И НИЧЕГО не сбоит. Учитесь правильно конструировать приборы и тогда не будет проблем.

Re: Проверка целостности данных в SPI

Ср ноя 15, 2017 08:57:14

Ярослав555 писал(а):с битом контроля четности результата преобразования.

Один бит чётности не решает проблему. Ошибка может быть двойная... 10011001 - данные АЦП, где 1 - бит чётности, 11 - двойная ошибка из-за помех, плохого питания... Кирдык моему насосу))
Ярослав555 писал(а):Если у вас в устройстве есть помехи способные нарушить работу SPI, то тогда до одного места что там Ваш ацп намерял
АЦП может быть вынесен поближе к датчику и подключен к МК проводами по SPI. При этом сам АЦП измеряет всё точно и помех не ловит.
Меня больше интересует надёжность. А если например отвалился вывод на датчике MISO... болтается в воздухе, рядом с силовой проводкой и работает как антенна в приёмнике, собирая все помехи вокруг. А если датчик или МК выносной, на батарейках... нестабильное питание. И т.д.


Если идет речь о внутрисхемном (внутриплатном) размещении БИС абонентов (АЦП и прочие РАСШИРИТЕЛИ) то в таком случае дополнительный контроль штука весьма избыточная. (касательно протоколов с АППАРАТНОЙ ПОДДЕРЖКОЙ SPI и I2C в устройствах с общей синхронизацией по сбросу при подаче питания и/или системному тактированию).
Решение за корректностью схемотехники, топологии разводки печатной платы (монтажа).
Грамотно организованная программа в МК подразумевается "по умолчанию".
Если речь о протоколе обмена между АВТОНОМНЫМИ устройствами - два разнесенных модуля с собственными МК и/или два и более АВТОНОМНО ФУНКЦИОНИРУЮЩИХ МК в пределах одной платы - тогда защита кода штука ЖЕЛАТЕЛЬНАЯ (но не во всех случаях обязательная).
Случай с "случайными механическими/электрическими повреждениями" монтажа и/или отдельных элементов устройства - это задача не CRC контроля а ГРАМОТНОЙ ПРОГРАММЫ СТАРТОВОЙ САМОДИАГНОСТИКИ СИСТЕМЫ.
Как вариант загрузки /обмена через UART
viewtopic.php?p=3167597#p3167597
:roll:

Re: Проверка целостности данных в SPI

Вс ноя 26, 2017 09:50:47

roman.com писал(а):К примеру по манчестеру приёмник сихронизирует свой тактовый генератор на каждом бите входящих данных. Схема может работать вообще без кварца. Ну и чем тогда асинхронная передача хуже синхронной?))
Так манчестер - как раз разновидность синхронной передачи. Самосинхронизирующаяйся, как про нее еще говорят.

Re: Проверка целостности данных в SPI

Вс ноя 26, 2017 13:47:39

Ярослав555 писал(а):Учитесь правильно конструировать приборы и тогда не будет проблем.

:))) у меня приборы работают в экстремальных условиях)) Простейший пример: после грозы сдох роутер. Пакеты проходят по частям.. через один... CRC решает эту проблему)) И т.д. и т.п. ))
BOB51 писал(а):Случай с "случайными механическими/электрическими повреждениями" монтажа и/или отдельных элементов устройства - это задача не CRC контроля а ГРАМОТНОЙ ПРОГРАММЫ СТАРТОВОЙ САМОДИАГНОСТИКИ СИСТЕМЫ.

САМОДИАГНОСТИКИ СИСТЕМЫ - уже ближе к теме..))
afz писал(а):манчестер - как раз разновидность синхронной передачи.

Манчестер - это не разновидность синхронной передачи. Манчестер - это всего лиш способ кодирования передаваемой информации, всего лиш обладает хорошими самосинхронизирующими свойствами. https://ru.wikipedia.org/wiki/Физическо ... одирование
Но сам способ кодирования передаваемой информации не имеет никакого отношения к способу передачи информации - синхронной/асинхронной.

Re: Проверка целостности данных в SPI

Пн ноя 27, 2017 16:29:23

roman.com писал(а):К примеру по манчестеру приёмник сихронизирует свой тактовый генератор на каждом бите входящих данных. Схема может работать вообще без кварца. Ну и чем тогда асинхронная передача хуже синхронной?))
DS2480. Для синхронизации частот мастер по юарту посылает специальный тайм-пакет на скорости 9600. А ресет микрухи осуществляется путем длинного нуля на ТХ линии. Вся прелесть проявилась неожиданно - на плате есть возможность путем переключения джамперов перекидать юарт на разные источники. Так вот, снимаем джампер - на линии ноль. ДСка ресетнулась и ждет тайм пакет. Цепляем джампер - дребезг контакта и ДСка улетает в такой режим, что только сброс по питанию спасает. Думал баг, а нет - в даташите есть сносочка по этому поводу, значит это фича :))) Просто фраза про внешнюю синхронизацию напомнила этот случай.
Ответить