Страница 1 из 1
PC<->RS485<->контроллер
Добавлено: Вс окт 18, 2009 19:39:35
dymon
Вообщем хочу соединить комп с контроллером по RS-485. Мне не понятно одно - синхронизация приема/передачи. Как сделать так, что бы комп настроился на передачу, а контроллер на прием и наоборот? А если на шине висят несколько устройств, то вообще не понятно...
Цель - создание сети, в которую входит один комп и несколько устройств. У компа должна быть возможность посылать/принимать данные от каждого устройства. Каждое устройство соответсятвенно должно принимать и отправлять данные.
Добавлено: Вс окт 18, 2009 19:48:19
Aheir
Поищите по форуму, обсуждалось неоднократно. Можно тайм-слотовый протокол делать, можно мастер-слейв, можно RTS/CTS сигналы попытаться использовать... Масса вариантов, ищите.
И еще: зачем делать вложением картинку bmp в архиве? Не проще на radikal.ru какой-нить выложить? В разы наглядней..
Добавлено: Вс окт 18, 2009 22:11:50
РадиоЛоматель
На будущее: Шина юсб не имеет сигналов DATE+ и DATE- но имеет сигналы DATA+ и DATA-
Добавлено: Пн окт 19, 2009 21:39:23
BCluster
Когда у меня несколько устройств, и не экономлю на скорости передачи, я обычно делаю кодовую адресацию и все. Первый байт шлете с адресом устройства, затем уже саму команду. Обратно тоже самое.
RTS/CTS в RS485 не используется по моему (:
Добавлено: Вт окт 20, 2009 22:34:34
Aheir
Напрямую не используется. Но для управления прием/передача на микросхеме RS485 трансивера можно приспособить, как мне кажется.
Добавлено: Ср окт 21, 2009 04:05:19
Alexey1969
Можно вот так
http://www.autobills.ru/rs232tors485.html
Передача управлением входом прием - передача
Добавлено: Ср окт 21, 2009 06:22:58
BCluster
Можно конечно, если сильно захотеть то все можно ) Но для меня кодовая адресация кажется самой простой. Правда тут надо думать над арбитражем, а то если два устройства захотят передать информацию? Надо флаг занятости канала организовывать
Добавлено: Ср окт 21, 2009 13:07:53
radteh
Использование режима master - slave, исключит одновременную передачу двумя устройствами. Самое простое: головное устройство выдаёт в линию адресс усройства и комманду для него, подчинёное выдаёт ответ, непоступило ответа - значит обрыв связи.