Вечер добрый, изучаю интерфейс RS 485 принцип и логики работы понял, не могу понять как происходит адресация приемопередатчиков. Ардуина общается через этот интерфейс с регистрами сдвига. выводя нужные цифры. Возможно в сборке несколько шин RS 485 пока что не знаю полную логику сборки. Если опираться на схему каким образом происходит адресация приемопередатчиков, или же за это отвечает устройство за ним?
Адресация устройств на шине RS-485 не встроена аппаратно в сам интерфейс, а реализуется программно протоколом верхнего уровня. Все железки принимают сигнал, а как на него реагировать - пиши программу каждой из них. Или двигай то что унифицировано - Modus RTU, например. Адресация в RS-485 — это логический механизм, реализуемый на уровне протокола связи, а сам интерфейс RS-485 лишь обеспечивает надежную физическую передачу дифференциального сигнала по одной паре проводов. Если у тебя некоторые устройства, изготовленные не тобой - читай их документацию, а если сам делаешь - пиши код какой нравится. Объяснил?
на уровне RS-485 - никак, ибо RS-485 - это стандарт, описывающий требования к физическому каналу, количеству и последовательности следования битов. Что и как передавать он не описывает. Адресация, данные, пакеты и прочее - это уровень описания применяемого протокола. И в разных протоколах реализация абсолютно разная. И если модбас является доступным стандартом, то профибас в открытом доступе практически не доступен. А Орион от Болида вообще закрыт.
Вроде разобрался как и зачем реализованы ADM485 в моем случае. Пакеты по шине не передаются, а только логический ноль или единица для управления регистрами сдвига по 4м каналам. В двух словах: контроллер передает на первый чип сигнал (ноль или единицу) он исключительно передает, за ним стоит второй который по шине принимает. и выдает в линию сигнал. За ним стоит ещё один также передает этот сигнал снова в шину но уже во вторую. Далее стоит четверты который выдает сигнал с микро процессора. И так далее. Если нужна схема могу на чертить. Если исходить из простого то таким образом можно мигать светодиодом через транзистор на большом расстояние и иметь помехоустойчивость.
Не пакеты UART передавать не может: всегда будет стартовый бит и всегда будет стоп бит. В паузе всегда висит единица. Передавать сплошные нули или единицы плохая идея - нельзя определить ошибки в пакете на приёмнике.
Уарт не используется, а передается исключительно 0 или 1, на пакет срать что там с ним, я хочу дергать затвор мосфета на растояние километра, чтоб мигать светодиодом.
Для таких случаев придумали токовую петлю. Второй момент - это грозозащита. Здесь без оптопары (а ещё лучше трансформатор) никак.