@ivan58

На програмном уровне интерфейсы сходны между собой?

Физические принципы передачи данных различаются уровнем напряжения , устройством электрической связи , расстоянием передачи,помехоустойчивостью, скоростью, а вот на уровне цифровом , где "0" и "1 " все же остается прежним ? Тогда чем интерфейс UART отличается от RS485 ? Ведь передать математическое действие 2+2=4 по UART и тоже самое по RS232 будет одинаковым ? Если же различаются , то значит цифровая информация проходящая через преобразователь интерфейсов например USB в RS485 перекодируется ?
  • Вопрос задан
  • 224 просмотра
Решения вопроса 2
vabka
@vabka
Токсичный шарпист
Вы выдумали какую-то свою терминологию - отсюда и недопонимание.
1. Интерфейсы делятся на цифровые и аналоговые. Ме сейчас рассматриваем именно цифровые.
2. Нет никакого "цифрового" уровня. Если интерфейс цифровой - ты даже на физическом уровне увидишь его дискретность.
3.
чем интерфейс UART отличается от RS485

UART - интерфейс
RS-485 - одна из его реализаций на физическом уровне
RS-232 - другая реализация UART на физическом уровне.
4.
Ведь передать математическое действие 2+2=4 по UART и тоже самое по RS232 будет одинаковым?

Это сравнение мягкого и тёплого. В данном случае интерфейса (его логики) и его физической реализации.

5.
информация проходящая через преобразователь интерфейсов например USB в RS485 перекодируется

По сути да.
Преобразователь USB-RS485 никак на информацию не влияет.
Информация сначала кодируется в датаграммы USB, затем микросхема в преобразователе её декодирует и отправляет уже по rs485, закодировав так, как того требует UART.
Ответ написан
@pfg21
ex-турист
UART - универсальный асинхронный приемо-передатчик. сигнал 0 это уровень питающего напряжения (либо +5в либо +3в в зависимости от питающего процессор напряжения). сигнал 1 это уровень земли.

RS232 отличается от uart лишь уровнями напряжения: 0 должен быть от +5в до +15в, 1 должен быть от -5в до -15в.
сделано это для увеличения дальности передачи - RS232 может передавать на расстояние до 15 метров, uart - десятки сантиметров.
в классическом преобразователе max232 находится емкостной преобразователь из +5в в +10в и -10в и усилитель выдающий эти напряжения на выхода. плюс аналогичный входной преобразователь.

RS485 - это передача данных по симметричной линии, обозначаемой обычно A и B. 0 и 1 в ней определяются разность напряжений между линиями A и B.
преобразование из UART в RS485 производится преобразованием соответственно из "несимметричного" сигнала в "симметричный" и обратно.
плюс требуется отдельная линия на переключение в режим передатчика, хотя есть схемы автоматического переключения на передачу по наличию 1 на TxD.
сделано опять для увеличения дальности - дальность передачи по RS485 может исчислятся километрами.

перекодирование/обработки информации между UART RS232 RS485 нет.
какой бит на вход пришел - такой же бит на выходе и будет.

USB отличается от всех вышеуказанных тем, что он гораздо сложней.
в нем передаются не байты, а пакеты информации.
требуется большая программная обработка мудреного (по сравнению с UART) протокола связи.
хотя на физическом уровне USB также использует симметричную линию как и RS485.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
@VT100
Embedded hardware & software.
Опять путаница в голове. Канальный(?, см. ЭМВОС/OSI) уровень UART - может работать поверх физических уровней RS232 или RS485. USB - определяет все(?) уровни модели от физического и выше.
Ответ написан
Комментировать
@AlexSku
не буду отвечать из-за модератора
"0" и "1 " все же остается прежним ?

Нет. Есть - уровень потенциала (между двух линий), а есть манчестерский код - два перехода или один (т.е. частотная модуляция).
Ответ написан
Комментировать
@Kantat
hobby
"Ведь передать математическое действие 2+2=4 по UART и тоже самое по RS232 будет одинаковым ?" - пьяный француз.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы