Использование serial в pro mini с двух сторон

osetroff
Offline
Зарегистрирован: 27.08.2014

Сделал удаленную прошивку pro mini по витой паре:

собрал bootloader на 9600,

через оптроны 4n35 и 74hc132 развязал TX,RX и DTR.

Осталось три провода в витой паре.

По двум пустил rs485 (на стороне arduino max485).

rs485 нужен для более стабильной и быстрой скорости 115200.

При одновременном подключении на hardware serial TX RX

и rs485 и удаленного программатора, прошить arduino можно,

а вот общаться  rs485 - нельзя (если отключаю от rx arduino удаленный программатор, кы485 начинает работать).

Понятно, что нужно на пин rx arduino подавать то tx с rs485, то tx с программатора (переключать).

Подскажите какие-нибудь идеи как это проще сделать.

Проблема в том, что не понимаю основ радиотехники: если подключены оба tx к rx, они оба по умолчанию 5В. Думал, если любой tx в 0В - то и на rx будет 0, т.к. стечет все на землю. Но почему-то это не работает. Если подключать по отдельности к rx - работает.

 

tpg_k156
Offline
Зарегистрирован: 03.10.2012

Нарисуй схему которую собрал. Ибо на слова вы не мастер. И кратко объясните что хотите.

Andrey_Y_Ostanovsky
Offline
Зарегистрирован: 03.12.2012

Ну так и пустили бы всё по RS485 через конверторы в RS232 с двух сторон... Зачем городить RS232 параллельно с RS485?

osetroff
Offline
Зарегистрирован: 27.08.2014

tpg_k156 пишет:

Нарисуй схему которую собрал. Ибо на слова вы не мастер. И кратко объясните что хотите.

Чем коммутировать два разных TTL сигнала на вход arduino RX.

Пока сообразил только через вторую 74hc132 сделать.

Работает.

Схему постараюсь нарисовать, когда все допилю.

Ее пол дня рисовать, я не спец.

osetroff
Offline
Зарегистрирован: 27.08.2014

Andrey_Y_Ostanovsky пишет:

Ну так и пустили бы всё по RS485 через конверторы в RS232 с двух сторон... Зачем городить RS232 параллельно с RS485?

1. У меня нет конверторов. Какая у них маркировка?

2. Хотелось использовать стандартный конвертер USB to TTL (типа pl2303) для удаленной прошивки. Я допилил в загрузчике прошивку EEPROM, так что такого программатора достаточно для отладки.

Без конвертера откуда я на rs485 возьму DTR, чтобы был reset перед прошивкой arduino?

Сейчас все заработало с дополнительной 74hc132, только громоздко как-то на стороне arduino: 

- три 4n35,

- две 74hc132,

- max485.

 

Зато автоматом и шьет и rs485 работает.

А то я, было, выключатели уже приготовил :)

Andrey_Y_Ostanovsky
Offline
Зарегистрирован: 03.12.2012

Наиболее продвинутые просто ставят ProMini в кроватки, демонтированные со старых материнских плат. :)