URAN 0 31 марта, 2008 Опубликовано 31 марта, 2008 · Жалоба Люди подскажите какую микросхему можно (нужно) испоьзовать для следующих целей: из микроконтроллера данные должны передоваться на одно из четырех устройств по RS 485, перед преобразователем в RS485 нужно делать выбор канала (1 из 4), что для этого можно применить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VladimirYU 0 31 марта, 2008 Опубликовано 31 марта, 2008 · Жалоба Люди подскажите какую микросхему можно (нужно) испоьзовать для следующих целей: из микроконтроллера данные должны передоваться на одно из четырех устройств по RS 485, перед преобразователем в RS485 нужно делать выбор канала (1 из 4), что для этого можно применить. ИМХО, ничего не нужно. Все решается на уровне протокола обмена, MODBUS например. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
URAN 0 31 марта, 2008 Опубликовано 31 марта, 2008 · Жалоба Ну а если все же ити по пути : выбор канала с помощью микросхемы, чем можно делать разделение ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rezident 0 31 марта, 2008 Опубликовано 31 марта, 2008 · Жалоба Все устройства RS485 подключаются к одной шине. Адресация устройств происходит на уровне транспортного протокола. Транспортных протоколов существует много. См., например, в Википедии. Или вот еще, Wake. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rx3apf 0 31 марта, 2008 Опубликовано 31 марта, 2008 (изменено) · Жалоба Ну а если все же ити по пути : выбор канала с помощью микросхемы, чем можно делать разделение ? 405x. Хотя типично у трансиверов RS485 есть входы выборки, так что вполне можно организовать демультиплексирование именно выборками... Изменено 31 марта, 2008 пользователем rx3apf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrYuran 23 31 марта, 2008 Опубликовано 31 марта, 2008 · Жалоба 405x. Хотя типично у трансиверов RS485 есть входы выборки, так что вполне можно организовать демультиплексирование именно выборками... Прстейший способ - завести входы EN (или CS) всех приёмопередатчиков Rs485 на 4 ноги мк и управлять. В зависимости от полярности на нужный выдавать 0 или 1 (на остальные соответственно 1 или 0). Главное в этом случае - не включить больше одного одновременно. "Железные" мультиплексоры в этом смысле надёжнее. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alkaes 0 31 марта, 2008 Опубликовано 31 марта, 2008 (изменено) · Жалоба Люди подскажите какую микросхему можно (нужно) испоьзовать для следующих целей: из микроконтроллера данные должны передоваться на одно из четырех устройств по RS 485, перед преобразователем в RS485 нужно делать выбор канала (1 из 4), что для этого можно применить. MrYuran прав. Но если нет возможности контролировать CS/EN каждого драйвера(есть чипы в которых просто четыре дравера в одном корпусе без CS/EN ) То можно и так, вообще без дополнительных элементов(Только с помощью четырёх резисторов): На который канал нужно вывести сигнал - ставишь на MASKx 'Z' (DDRx = '0', PORTx = '0'). А на остальных '1' Изменено 31 марта, 2008 пользователем alkaes Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
URAN 0 31 марта, 2008 Опубликовано 31 марта, 2008 · Жалоба Если я правильно понял что "железные" мультиплексоры это собственно отдельная микруха, то я как раз и хочу использовать такую, только не знаю какую (простите за тафтологию). Представляю так : из контроллера 2 вывода адресных, 2 вывода разрешения чтения - записи, чтение запись адресуется тому устройству , адрес которых установлен в первых двух выводах. А можно и так, вообще без дополнительных элементов(Только с помощью четырёх резисторов): На который канал нужно вывести сигнал - ставишь на MASKx 'Z' (DDRx = '0', PORTx = '0'). А на остальных '1' А как быть с приемом ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alkaes 0 31 марта, 2008 Опубликовано 31 марта, 2008 · Жалоба Если я правильно понял что "железные" мультиплексоры это собственно отдельная микруха, то я как раз и хочу использовать такую, только не знаю какую (простите за тафтологию). Представляю так : из контроллера 2 вывода адресных, 2 вывода разрешения чтения - записи, чтение запись адресуется тому устройству , адрес которых установлен в первых двух выводах. А как быть с приемом ? С приёмом сложнее Тогда используй SN74CBT3253C (DUAL 1OF4 MUX/DEMUX)PDF Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rezident 0 31 марта, 2008 Опубликовано 31 марта, 2008 · Жалоба URANst, вам тут сейчас насоветуют :( Вы поясните, четыре устройства должны быть физически разделены или их можно все-таки объединить на одной физической шине RS485? Что это за устройства на которые МК должен передавать данные? Это курсовая? Если да то, напишите задание полностью. Может вы его неверно интерпретируете? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
set bit 0 31 марта, 2008 Опубликовано 31 марта, 2008 · Жалоба может эти микросхемы ADG409, DG409 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
a_electronic 0 31 марта, 2008 Опубликовано 31 марта, 2008 · Жалоба Вообще то мультиплексировать RS-485 до интетфейсного драйвера некрасиво ваще. RS-485 изначально подразумевает адресацию устройства уже после интерфейсного драйвера на уровне протокола обмена. А включение всяких мультиплексоров перед драйвером очень плохо, поскольку каждый вносимый ом в сопротивление линии связи ухудшает помехозащищенность очень сильно. Кроме этого, сами драйвера имеют весь необходимый набор защит от всяких несанкционированных сигналов, гуляющих обычно по линии связи, мультиплексоры же этого не имеют. так что лучше это делать либо релюхами, либо классическим способом - на уровне протокола. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rx3apf 0 31 марта, 2008 Опубликовано 31 марта, 2008 · Жалоба Вообще то мультиплексировать RS-485 до интетфейсного драйвера некрасиво ваще. RS-485 изначально подразумевает адресацию устройства уже после интерфейсного драйвера на уровне протокола обмена. А включение всяких мультиплексоров перед драйвером очень плохо, поскольку каждый вносимый ом в сопротивление линии связи ухудшает помехозащищенность очень сильно. Я так понял, что речь о мультиплексировании UART перед драйверами, со стороны контроллера. Естественно, коммутировать саму шину - опасный идиотизм. А вот выбрать линию (или развязать линии) 485 - вполне реальная задача. Ситуации разные бывают, топология звездой, к примеру. Или уперлись в нагрузочную способность... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SapegoAL 0 31 марта, 2008 Опубликовано 31 марта, 2008 · Жалоба Ситуации разные бывают, топология звездой, к примеру. Да нет. Судя по вопросам, планируется создать топологию незвездой, а другой фигурой. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrYuran 23 1 апреля, 2008 Опубликовано 1 апреля, 2008 · Жалоба А как быть с приемом ? В своё время у меня была система, объединяющая по RS-485 512 модулей. Естественно, они были разбиты на группы по 32, для каждой группы своя шина. Передача шла на все параллельно (использовались адресные команды), а вот приём - объединяли все выходы DI приёмников по "или". Правда, есть одна проблема: если какой-то модуль зависнет и оставит на шине "1", то эта единица забьёт по приёму все остальные линии (так как объединение по или.) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться