Страница 1 из 1
Связь между 2 платами
Добавлено: 21 янв 2019, 11:04
STX-121
Всем привет!
Подскажите, возможно ли?
Есть Ардуино Нано с которой нужно передавать данные (переменную или csv-строчку) на другую Ардуино Нано
Проблема в том что на передающем контроллере оба UART уже заняты, I2C тоже (дисплей 1602)
Есть ли какой-то способ отравлять/получать переменную между этими двумя контроллерами?
Связь между 2 платами
Добавлено: 21 янв 2019, 11:07
Sancho
STX-121 писал(а): 21 янв 2019, 11:04I2C тоже (дисплей 1602)
На обоих?
Soft Serial.
SPI.
Связь между 2 платами
Добавлено: 21 янв 2019, 11:17
STX-121
Нет, на основной заняты Softserial, Serial (0,1) и дисплей I2C
на дополнительной все свободно
SPI не задействованы, по SPI как-то можно организовать обмен?
Связь между 2 платами
Добавлено: 21 янв 2019, 11:30
Sancho
STX-121 писал(а): 21 янв 2019, 11:17на дополнительной все свободно
Добавь в неё I2C слэйв, подключи параллельно дисплею.
По spi - конечно, но пинов нужно 4, для двухстороннего обмена, 3 - в одну сторону.
Связь между 2 платами
Добавлено: 21 янв 2019, 11:46
STX-121
Примерно понял, спасибо.
Sancho писал(а): 21 янв 2019, 11:30I2C слэйв
имеется в виду из темы "I2C - просто"?
viewtopic.php?f=112&t=2530
Связь между 2 платами
Добавлено: 21 янв 2019, 11:51
Sancho
[ref]STX-121[/ref], Да, из неё.
Связь между 2 платами
Добавлено: 21 янв 2019, 13:38
seri0shka
STX-121 писал(а): 21 янв 2019, 11:17на основной заняты Softserial, Serial (0,1) и дисплей I2C
Softserial работает корректно? Кому шлёт или от кого принимает, на какой скорости? Блок стандартный или пользовательский (если да, то какой)? Мой опыт с Softserial не очень удовлетворительный.
Связь между 2 платами
Добавлено: 21 янв 2019, 15:26
STX-121
Блок стандартный, SoftSerial работает без проблем, скорость 9600 подключен напрямую к Bluetooth HC-06
Отправляет каждые 2 секунды CSV-строку из 15 значений
Была проблема: при одновременной отправке и получении данных переставала работать передача
Решил просто: выход "новые данные" подключен к "очистке буфера по команде на входе", плюс таймер задержки на 5 сек.
Больше накладок нет, все работает стабильно
Связь между 2 платами
Добавлено: 22 янв 2019, 13:57
ingener
а можно соединить главную плату (UNO) со второй (нано или микро), с помощью RX/TX пинов, и таким образом передавать переменную для управления частотой генератора на второй плате? Там кроме генератора ничего не будет, чтобы обеспечить ему полный диапазон.
Отправлено спустя 27 минут 27 секунд:
Если так можно, то как это рисовать в FLprog? Отдельно для каждой платы? Как же тогда переменную передать потом между ними?

Связь между 2 платами
Добавлено: 22 янв 2019, 14:46
Sancho
[ref]ingener[/ref], На главной UNO- "Отправка переменной в Uart" - к нему цепляешь переменную, отправлять каждые .... сек.
"Инструменты"->"Выгрузить описание..." сохраняешь как нить, куда нибудь.
На второй, Nano, добавляешь "Приём переменной из Uart" - загрузить из файла...
Связь между 2 платами
Добавлено: 22 янв 2019, 16:04
ingener
[ref=#ff8000]Sancho[/ref],

Связь между 2 платами
Добавлено: 22 янв 2019, 20:18
seri0shka
Sancho писал(а): 22 янв 2019, 14:46"Отправка переменной в Uart" - к нему цепляешь переменную...
Уже больше года пользуюсь блоком "Отправка в Uart", чем отличается "Отправка переменной в Uart", я его так и не понял тогда?
Связь между 2 платами
Добавлено: 22 янв 2019, 20:30
Sancho
[ref]seri0shka[/ref], Отправляете переменные - на другой стороне принимаете. Ничего парсить не надо - всё за Вас

Связь между 2 платами
Добавлено: 22 янв 2019, 23:37
seri0shka
Я правильно понимаю: это имеет смысл, если переменных несколько?
Связь между 2 платами
Добавлено: 23 янв 2019, 03:25
eto_oleg
Ребят, прошу совет. У меня похожая задача, обмен по UART между Uno и Node MCU. С ардуинки передаю температуры и состояния насосов на Node MCU а уже от туда по вайфаю на Каскаду, таким образом осуществляю мониторинг. Связь работает отлично. Но что бы я не делал не могу добиться обратной связи по этому же UART, для того чтобы менять уставки температуры на ардуинке. Что я только не делал..

подскажите, кто-то настраивал двухстороннюю связь между платами по одному UART с помощью встроенных блоков "отправка переменой в UART"? Может там какой-то конфликт возникает?
Связь между 2 платами
Добавлено: 23 янв 2019, 07:27
jonik22sm
Проект в студию
Связь между 2 платами
Добавлено: 23 янв 2019, 08:25
Sancho
[ref]eto_oleg[/ref], Обсуждали недавно
здесь
seri0shka писал(а): 22 янв 2019, 23:37Я правильно понимаю: это имеет смысл, если переменных несколько?
Возможно, да, но и при одной - достоверность принятых данных выше.
Связь между 2 платами
Добавлено: 24 янв 2019, 14:10
Ingwar
Посыл для [ref=#ff8000]Sancho[/ref].
[spoiler]Протокол XMODEM.
Полудуплексный принцип работы позволяет использовать простейшие физические каналы связи. Например, передатчик и приемник может соединять единственный сигнальный провод (либо это может быть радиоканал на общей частоте для передатчика и приемника), который переключается с приема на передачу, потому что протокол XMODEM не подразумевает одновременной передачи на обоих концах канала связи.[/spoiler]
Если Александр или другие спецы захотят, то сделают ПБ.
Пример приема (как я понял)
[spoiler]
http://www.gaw.ru/data/Atmel/avr/AVR350.zip[/spoiler]
Описание примера
http://www.gaw.ru/pdf/Atmel/app/avr/AVR350.pdf
З. Ы. Александр, ни в коем случае не намекаю/настаиваю.
Связь между 2 платами
Добавлено: 02 мар 2019, 12:35
solo
подскажите пж есть проект на двух нанах соединеных между собой в кольцо , проект работает но нана которая "pecka" после отключения питания сама не запускается , на ней собран импровизированный ШИМ регулятор для тэнов . Если после включения ардуинок , на ардуинка "peckaDicpley" изменить значение в меню то тогда на ардуинке "pecka" соотвецтвующий ШИМ начинает работать . Посоветуйте как можно сделать чтобы тены включались сами после подачи питания на ардуинки
Отправлено спустя 32 минуты 56 секунд:
все разобрался , сделал задержку передачи данный с peckaDicpley в кольцо , на вывод EN подал 1 с задержко в 1сек и все заработало