Перейти к содержанию
    

Последовательное соединение нескольких МК по uart

Возможно ли соединить несколько МК по uart(4-5штук)?

Т.е. каждый контроллер является и мастером и ведомым( относительно следующих МК)

Передаем например 1 байт следующий МК принимает добавляет свой байт и передает дальше и т.д.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Возможно ли соединить несколько МК по uart(4-5штук)?

Т.е. каждый контроллер является и мастером и ведомым( относительно следующих МК)

Передаем например 1 байт следующий МК принимает добавляет свой байт и передает дальше и т.д.

Посмотрите, как реализован интерфейс LIN.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Возможно ли соединить несколько МК по uart(4-5штук)?

Т.е. каждый контроллер является и мастером и ведомым( относительно следующих МК)

Передаем например 1 байт следующий МК принимает добавляет свой байт и передает дальше и т.д.

Возможно.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не получается больше трех(

Для каждого МК это соединение точка-точка, так что дело не в UART. Проверяйте логику работы ПО. Что именно не получается?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Возможно ли соединить несколько МК по uart(4-5штук)?....

 

да, можно.

ышо когда был Нортон альтернативной ориентации (в том веке) делали концентраторы типа соединения звезда энного кол-ва компов по последовательному порту

(по юарту ышо просче - выкидываются корпуса преобразователей уровней). Связь только двух компов, все остальные молчат - без переписывании софта связи(т.е. любой пойдёт).

Если с переписыванием - то там вооще красота, можно одновременно передавать и принимать со всех компов сразу...

масштабируется всё это хозяйство на раз - вместо одного компа включается точно такой-же концентратор и алё....

 

ответ прост.

подумайте над тем, как аппаратно сделать передачу на всех кроме себя :) дальше дело техники.

 

удачи вам

(круглый)

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не получается больше трех(

Так не получается?

 

image.jpg

 

Изменено пользователем LII

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так не получается?

 

image.jpg

 

Получится. Добавьте еще одну линию от последнего TX к первому RX и получите классическую топологию кольцо. Дальше вопрос только назначить всем уникальные адреса (административно) и договориться о формате пакетов. Опробовано неоднократно.

 

Но, если честно, лучше не городить огород а взять RS485 и поверх него какой-нить ModBus. При любом раскладе реализация будет в том или ином виде ущербной. Но так хоть сколько-нить стандартной.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Получится. Добавьте еще одну линию от последнего TX к первому RX и получите классическую топологию кольцо. Дальше вопрос только назначить всем уникальные адреса (административно) и договориться о формате пакетов. Опробовано неоднократно.

Лишнего провода нет. Адреса тоже бы не хотелось применять, просто по номеру байта понимать какой какой контроллер отправил.

Вроде бы разобрались.

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да элементарно они вешаются на параллельный интерфейс (эдакий псевдо-485). Просто ногу Tx нужно настроить не в пушпульный режим, а в открытый сток. И повесить резистор подтягивающий на всю линию (потому как внутренняя подтяжка при большом количестве девайсов на линии будет жрать ток).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да элементарно они вешаются на параллельный интерфейс (эдакий псевдо-485). Просто ногу Tx нужно настроить не в пушпульный режим, а в открытый сток. И повесить резистор подтягивающий на всю линию (потому как внутренняя подтяжка при большом количестве девайсов на линии будет жрать ток).

МК соединяются последовательно. Как на рисунке только без третьего провода. Т.е. есть мастер и он передает байт данных, принимает ведомый плюсует к полученным и передает уже два байта дальше и т.д. Скорость не важна.

На бумаге все красиво, не знаю как в железе и наверно придется ставить генератор вместо кварца

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На бумаге все красиво, не знаю как в железе и наверно придется ставить генератор вместо кварца

В железе решается внятным протоколом. Генератор точно не поможет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

МК соединяются последовательно.

И в чем проблема? Это ж как адресуемые светодиоды получается. По USART1 данные принимаем, по USART2 передаем дальше, откусив первые N байт.

Только с большими длинами линий могут возникнуть косяки.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

МК соединяются последовательно. Как на рисунке только без третьего провода.

Третий провод на рисунке - это общий, он нужен обязательно!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...