1 (29-07-2018 17:15:28 отредактировано nomis)

Тема: Несоответствие симулятора реальной работе(вкл/выкл CAN)

При попытке реализовать спящий режим с пробуждением по CAN столкнулся с проблемой. Приложенная диаграмма в симуляторе работает корректно(светодиод зажигается на 3с с периодом 6с), при заливке в контроллер светодиод вспыхивает на мнгновение(видимо на один цикл диаграммы), либо вообще не загорается. При отключеннии ветки выставления настроек кан, все становится нормально. При изменении длительностей ничего не меняется(даже при очень больших).

Пытался проконтролировать срабатывание вочдога, не нашел соответствующего регистра. Контроль регистра "Питание восстановлено" ничего не показывает.

Мне нужно CAN периодически включать(для проверки сигнала пробуждения) и отключать(для запуска спящего режима).

Просто при запуске включения-выключения CAN с генератора шим(для теста) все работает корректно.

Вложений в сообщении

Снимок.JPG, 141.79 кб, 878 x 533
Снимок.JPG 141.79 кб, скачивался 306 раз, последний раз 2018-07-29 

2

Re: Несоответствие симулятора реальной работе(вкл/выкл CAN)

При переводе контроллера в спящий режим из диаграммы, все активированные драйверы, включая CAN, переходят в спящий режим автоматически. При активности на любом активированном интерфейсе контроллер автоматически возвращается в рабочий режим с автоматически пробуждением всех активированных драйверов. Принудительно отключать драйвер CAN нет необходимости. Ести того требует задача, вы можете использовать CAN в пассивном режиме.

3

Re: Несоответствие симулятора реальной работе(вкл/выкл CAN)

Добавлю что регистры контроллера в симуляторе не активны и всегда содержат ноль.

4 (29-07-2018 18:05:24 отредактировано nomis)

Re: Несоответствие симулятора реальной работе(вкл/выкл CAN)

При переводе контроллера в спящий режим из диаграммы, все активированные драйверы, включая CAN, переходят в спящий режим автоматически. При активности на любом активированном интерфейсе контроллер автоматически возвращается в рабочий режим

Как тогда реализовать спящий режим при наличии активности в CAN? Только отключить CAN, разве я не прав?

Добавлю что регистры контроллера в симуляторе не активны и всегда содержат ноль.

Это понятно. На приведенной диаграмме я не использую их значений. Я НЕ читаю из регистров.

И все-таки, вы не могли бы рассказать, в чем проблема диаграммы? Непонятное поведение, это очень плохо.

5

Re: Несоответствие симулятора реальной работе(вкл/выкл CAN)

На вскидку не скажу. Завтра смоделируем ситуацию - посмотрим. Вероятнее всего дело в особенностях драйвера а не в несоответствии работы именно алгоритма диаграммы в симуляторе и контроллере.

6

Re: Несоответствие симулятора реальной работе(вкл/выкл CAN)

Константин, CANNY пишет:

Вероятнее всего дело в особенностях драйвера

Согласен. Было бы здорово, если вы расскажете, что за особенность и как с ней реализовать спящий режим при идущих пакетах в CAN.
У меня 4 контроллера канни, и они вместе едят около 500ма. Нужно их усыплять.

7

Re: Несоответствие симулятора реальной работе(вкл/выкл CAN)

Выяснили, причина действительно в особенностях драйвера CAN. Напишите нам по электронной почте на info - вышлем вам обновленную версию системного ПО для тестирования.

8

Re: Несоответствие симулятора реальной работе(вкл/выкл CAN)

Спасибо за ответ! Напишу.