1

Тема: шлюз со слежением

Здравствуйте!
Прошу проверить диаграмму
Задача: шлюз работает в обе стороны. Но если пакет появляется в CAN0 его надо передать в USBVCP.
Вопрос: Достаточно или много 5мс перед отправкой чтобы данные из кан записались в буфер uart?

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

Иконка вложения слежение.cfd 3.03 кб, скачивался 30 раз, последний раз 2024-07-12 

2

Re: шлюз со слежением

Достаточно или много 5мс перед отправкой чтобы данные из кан записались в буфер uart?

Похоже, что в ваши рассуждения закралась ошибка. Данные в буфер UART с точки зрения пользователя/диаграммы записываются условно мгновенно. Вы встречали в документации какие-либо упоминания задержек записи в какие-либо регистры?

А вот для того, чтобы на входе блока №6 вашей диаграммы появилось значение "1", контроллер должен непрерывно, на каждом проходе диаграммы получать новое сообщение в CAN0. Что в общем случае является маловероятным стечением обстоятельств.

3 (14-07-2024 21:34:54 отредактировано andreypav)

Re: шлюз со слежением

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

Достаточно или много 5мс перед отправкой чтобы данные из кан записались в буфер uart?

Похоже, что в ваши рассуждения закралась ошибка. Данные в буфер UART с точки зрения пользователя/диаграммы записываются условно мгновенно. Вы встречали в документации какие-либо упоминания задержек записи в какие-либо регистры?

А вот для того, чтобы на входе блока №6 вашей диаграммы появилось значение "1", контроллер должен непрерывно, на каждом проходе диаграммы получать новое сообщение в CAN0. Что в общем случае является маловероятным стечением обстоятельств.

Получается просто вот так и все?
Как компилятор поймет, что сначала надо заполнить/обновить регистры уарт, а потом только начинать передачу?
И будут ли в диаграмму попадать все сообщения из кан? Т.е. функция слежения - это прерывание? Или что насыпалось в буфер кан к очередному проходу диаграммы, то и обработает?

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

Иконка вложения слежение_2.cfd 2.9 кб, скачивался 33 раз, последний раз 2024-07-14 

4

Re: шлюз со слежением

Как компилятор поймет, что сначала надо заполнить/обновить регистры уарт, а потом только начинать передачу?

См. https://canny.ru/docs/common_plc/executionenvironment/

И будут ли в диаграмму попадать все сообщения из кан?

Зависит от загруженности интерфейсов CAN и USB, размера диаграммы. См.п.9 здесь: https://canny.ru/docs/tips_tricks/solut … ents_tips/

5

Re: шлюз со слежением

Не работает.
При этом монитор все видит.

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

IMG20240721194704.jpg, 305.46 кб, 300 x 400
IMG20240721194704.jpg 305.46 кб, скачивался 27 раз, последний раз 2024-07-21 

Screenshot_2024-07-21-19-54-18-89_99c04817c0de5652397fc8b56c3b3817.jpg, 176.93 кб, 810 x 503
Screenshot_2024-07-21-19-54-18-89_99c04817c0de5652397fc8b56c3b3817.jpg 176.93 кб, скачивался 25 раз, последний раз 2024-07-22 

6

Re: шлюз со слежением

andreypav пишет:

Не работает.

см. https://forum.canny.ru/viewtopic.php?pid=9810#p9810

7

Re: шлюз со слежением

Диаграмма слежение_2 из поста выше.
На can1 подаются пакеты.
Vcp смотрится ардуиновским Иде или терминалом putty.
Символы Hi проходят, видны в терминале.
Насколько я понимаю первые 10 байт должны быть в числовом формате (в эмуляторе показывает), но в терминале они почему-то нечитаемые.
Полагаю нужно их во что-то преобразовать перед отправкой в терминал, но не понимаю как.

8

Re: шлюз со слежением

См.:
1. https://ru.wikipedia.org/wiki/ASCII
2. https://canny.ru/docs/fbd/converters/nu … converter/

9

Re: шлюз со слежением

cool
даже возврат каретки заработал smile