Много уважаемые коты, у меня есть огромное желание смастерить аппаратно порт RS-485. подключить его к МК ATMega8 (в принципе к любой AVR) с одной стороны, а к ПК к другой стороне. Поискал на просторах интернета информацию по этому вопросу, и выяснил что этот порт работает по двум и четырем проводкам. Меня интересует по двум проводам схема. Для этого используется микросхема МАХ485. Где с МК по USART идут RX и TX и еще одна нога МК используется для того, чтоб переключаться с чтения на передачу и наоборот. Данную информацию я прочел на очень интересном портале: http://mayak-bit.narod.ru/rs485.html
А с другой стороны, нужен переходник с RS485 на USB.
Может кто подскажет информацию по аппаратной части и по программированию на С, как все это реализуется. Ссылочки полезные.
PS: У меня сын родился, читаю форум и одновременно качаю люльку.
RS-485 - принадлежит физическому уровню модели OSI.
С точки зрения программиста - RS-485 тот же RS-232 (ком порт, UART в контроллера), за исключением того, что RS-485 - полудуплексный (т.е. или принимаем или передаем) и может быть подключено несколько (2, 3, ...) устройств в сеть (RS-232 - только 2)
переходники с RS485 на USB построены на основе ftdi или другом конвертере USB-UART + MAX485 или ему подобные.
Что вам нужно чтоб соеденить ПК и микроконтроллер:
USB-RS485 конвертер (FT232 + MAX485 или купить готовый у китайцев)
Микроконтроллер + MAX485
Протокол! (если пробовать - можно и просто посылать-принимать как с UART (COM)). Или же пойти сразу дальше и использовать Modbus или MS/TP.
http://www.ftdichip.com/Support/Documen ... FT232R.pdf стр. 28
Для программирования со стороны компа они поставляют драйвер, описан тут :
D2XX_Programmer's_Guide(FT_000071).pdf с того же сайта. Есть 2 варианта общения с конвертером : через виртуальный COM- порт (VCP) или непосредственно через DLL (D2X) .
Cо стороны МК - это обыкновенный UART, только дополнительно пин IN/OUT не забывать дергать.
Протокол имеет значение, если связываться с каким-нибудь серийным устройством, заточенным именно под него. Если же ПО и со стороны компа, и со стороны МК пишется самим разработчиком, я предпочитаю протокол "мне вот так удобно" . Не следует уповать на магическую силу протокола - он предоставляет только оболочку, а наполнение ее - все равно дело рук ( и бошки ) программера. Это чтоб не было ситуевины типа : я вот сделал все по протоколу, а оно не работает. Я умываю руки, пусть Модбас разбирается