передача данных по аналговым и цифровым шинам

baby_in_Arduino
Offline
Зарегистрирован: 21.07.2019

всем привет

постараюсь систематизировать свое понимание как происходит передача данных по цифровым и аналоговым шинам

если я что то упустил и есть еще варианты прошу написать в комментах

 

итак, передача данных по аналговым и цифровым шинам

передача данных по аналоговой шине возможна только изменением 
напряжения на этой линии и интерпретации этого напряжения по соответствующей формуле, таким образом можно передать только одно значение и нельзя передать пакет байтов
 
на цифровых шинах все иначе
 
существует 2 подвида
 
первый это когда передающий притягивает или отпускает линию данных на определенный временной интервал измеряемый в микросекундах, и в зависимости от времени притяжки или отпускания линии принимающий 
понимает какой бит информации был передан 0 или 1
 
второй вариант это когда помимо линии данных существует тактовая линия
синхронизирующая отправителя и получателя на линии данных
 
когда тактовая линия притянута к логическому нулю или единице(цикл записи на линии данных) передающий притягивает линию данных в 0 или 1 в зависмости от того какой бит информации хочет передать и меняет состояние на тактовой линии (сигнализирующее что начался цикл чтения на линии данных), принимающий же в свою очередь следит за тактовой шиной и как только она сигнализирует что линия данных перешла в режим чтения, читает с неё данные, далее передающий меняет состояние на тактовой шине в режим "запись" и меняет состояние на линии данных, принимающий же ожидает пока состояние на тактовой шине сменится с состояния "запись" на "чтение"
 
andycat
andycat аватар
Offline
Зарегистрирован: 07.09.2017

Хрень, есть куча цифровых протоколов , в которых передача \ прием идёт совершенно по разному и это описано в документации. Открываем и читаем.

Kakmyc
Offline
Зарегистрирован: 15.01.2018

Фигню написал.
В природе такая туева хуча цифровых интерфейсов, что описать их всех в рамках даже целой статьи нереально.
А сколько протоколов передачи вообще мало кто знает.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

baby_in_Arduino пишет:

постараюсь систематизировать свое понимание как происходит передача данных по цифровым и аналоговым шинам

Лучше бы постарался писать по-русски.

Цитата:

передача данных по аналоговой шине возможна только изменением 

напряжения на этой линии и интерпретации этого напряжения по соответствующей формуле, таким образом можно передать только одно значение и нельзя передать пакет байтов
О каких байтах идет речь для аналогового сигнала?
Ну и заодно - что за "формула" имеется в виду?
 
Цитата:
 
притягивает или отпускает линию данных
 
 
Что это означает с технической точки зрения?
Насколько притягивает? На сантиметр? На метр?
Цитата:
состояние на тактовой шине в режим "запись" и меняет состояние на линии данных, принимающий же ожидает пока состояние на тактовой шине сменится с состояния "запись" на "чтение"
А что собой представляют режимы "запись" и "чтение"?
baby_in_Arduino
Offline
Зарегистрирован: 21.07.2019

andriano пишет:

baby_in_Arduino пишет:

постараюсь систематизировать свое понимание как происходит передача данных по цифровым и аналоговым шинам

Лучше бы постарался писать по-русски.

вот в личной переписке пишу хорошо, со всеми знаками препинания, а на форуме как то вообще не замарачиваюсь по поводу правописания, виноват, извините

Цитата:

Цитата:

передача данных по аналоговой шине возможна только изменением 

напряжения на этой линии и интерпретации этого напряжения по соответствующей формуле, таким образом можно передать только одно значение и нельзя передать пакет байтов
О каких байтах идет речь для аналогового сигнала?
Ну и заодно - что за "формула" имеется в виду?
 
ну надо передать пакет байтов, через аналоговый сигнал это как сделать?
например 10 цифр 32битных и две строки текста
 
а формула это например перевод пришедшего напряжения ну например в температуру или влажность
 
Цитата:
Цитата:
притягивает или отпускает линию данных
 
 
Что это означает с технической точки зрения?
Насколько притягивает? На сантиметр? На метр?
 
ну хватит троллить) притягивать в электротехнике означает поднять напряжение или отпустить)
 
Цитата:
Цитата:
состояние на тактовой шине в режим "запись" и меняет состояние на линии данных, принимающий же ожидает пока состояние на тактовой шине сменится с состояния "запись" на "чтение"
А что собой представляют режимы "запись" и "чтение"?

просто условность, поднято или отпущено напряжение на линии в зависимости от этого мы понимаем какой "режим"

))

 

baby_in_Arduino
Offline
Зарегистрирован: 21.07.2019

andycat пишет:
Хрень, есть куча цифровых протоколов , в которых передача \ прием идёт совершенно по разному и это описано в документации. Открываем и читаем.

ну по своей сути они делятся на 2 подвида ведь?

там где в зависимости от времени притяжки(в микросекундах) линии данных принимающий понимает какой бит информации передали, и там где существует некая тактовая линия синхронизирующая читателей и писателей с линии данных

 

baby_in_Arduino
Offline
Зарегистрирован: 21.07.2019

Kakmyc пишет:
Фигню написал. В природе такая туева хуча цифровых интерфейсов, что описать их всех в рамках даже целой статьи нереально. А сколько протоколов передачи вообще мало кто знает.

да это то все понятно, но ведь принцип передачи у них должен быть общий? могут отличаться только интервалы притяжки(в микросекундах) или дополнительные синхронизирующие тактовые линии?

 

b707
Offline
Зарегистрирован: 26.05.2017

baby_in_Arduino пишет:

ну надо передать пакет байтов, через аналоговый сигнал это как сделать?
например 10 цифр 32битных и две строки текста

пойми, ты пишешь чушь.

слово "аналоговый" тут лишнее. Если ты передаешь число побитно - это цифровой метод передачи, независимо от того, какие пины ардуины ты используешь.

И кстати, у ардуины ВООБЩЕ НЕТ АНАЛОГОВЫХ ВЫХОДОВ, все выходы только цифровые.

Kakmyc
Offline
Зарегистрирован: 15.01.2018

baby_in_Arduino пишет:

Kakmyc пишет:
Фигню написал. В природе такая туева хуча цифровых интерфейсов, что описать их всех в рамках даже целой статьи нереально. А сколько протоколов передачи вообще мало кто знает.

да это то все понятно, но ведь принцип передачи у них должен быть общий? могут отличаться только интервалы притяжки(в микросекундах) или дополнительные синхронизирующие тактовые линии?

 

Не должен.
Во первых цифровые интерфейсы деляться как минимум на параллельные/последовательные и синхронные/асинхронные. (На самом деле таких кардинальных различий куда больше)
Во вторых , то что справедливо для одних , не работает на других.
В общем не нужно пытаться объяснить то, в чем сам не рубишь, тем кто не рубит ещё больше.
Гивера с нас хватит вполне, такую же пургу прогоняет.

Kakmyc
Offline
Зарегистрирован: 15.01.2018

И вообще в первую очередь рекомендую начать различать интерфейс и протокол.
Тех же интерфейсов аппаратных у ардуино (нано/Уно) 4 штуки : USB, TWI(он же I2C),SPI и UART.
Всего же интерфейсов сонм. Приведу то что в голову пришло: CAN, ASI, IDE, HDMI, DVI, VGA(вот он кстати аналоговый), FireWire, PS/2, LTP, SATA/PATA и тд.
Так вот практически через любой интерфейс можно организовать работу по практически любому протоколу.

А для того что бы понять как они работают, нужно читать про каждый из них отдельно.
На большинство есть документация в открытом доступе.

И не надо пытаться натянуть сову на глобус.

wdrakula
wdrakula аватар
Offline
Зарегистрирован: 15.03.2016

baby_in_Arduino пишет:

на цифровых шинах все иначе
 
существует 2 подвида
 
первый это когда передающий притягивает или отпускает линию данных на определенный временной интервал измеряемый в микросекундах, и в зависимости от времени притяжки или отпускания линии принимающий 
понимает какой бит информации был передан 0 или 1
 
второй вариант это когда помимо линии данных существует тактовая линия
синхронизирующая отправителя и получателя на линии данных
 

бла-бла-бла

Родное сердце, ты для чего это написал? Укушен преподавателем?  ;)) Тогда тебе картинка:

И это еще не все способы передавать сигнал в "цифровой" линии без отдельной синхронизации. ;)))

Интернет и так переполнен безграмотными "комментариями".

===========ОФФТОП===========

Я читал когда-то в Бауманке курс для переподготовки взрослых бездельников. Там у меня было часов 20 лекций по ОТПИ (Основы Теории Передачи Информации). Это вот как раз то, что ты пытаешься изложить, плюс основы физики передачи+ немного булевой алгебры, теории автоматов, теории сложности, гармонического анализа и модель ОСИ туда же. Я этим долбаёбам даже Шеннона-Хартли за одну лекцию доказывал и Котельникова-Найквиста. Не думаю, что они много понимали ;))).

Я думал тут опубликовать, но сами материалы я давно проебал, а по памяти восстанавливать лень.

===================================

А вот тебе еще про линии,  цифровые :))) как ты их обозвал! Кроме напряжения (которое бывает с общей землей, а бывает  дифференциальной парой) есть еще и токовая петля.... ну к примеру, о "притягивании и оттягивании".

А для понимания сути - разложи, если интересно, по семи уровням ОСИ обычное устное общение людей в деревне. ;))) А то, без понимания основ, сразу к цифровым линиям! Вот прям так:

1. Физика:

2. Канал:

3. Сеть:

4. Транспорт:

5. Сеанс:

6. Данные:

7. Приложение:

------------------------

SLKH
Offline
Зарегистрирован: 17.08.2015

Kakmyc пишет:
И вообще в первую очередь рекомендую начать различать интерфейс и протокол. Тех же интерфейсов аппаратных у ардуино (нано/Уно) 4 штуки : USB, TWI(он же I2C),SPI и UART. Всего же интерфейсов сонм. Приведу то что в голову пришло: CAN, ASI, IDE, HDMI, DVI, VGA(вот он кстати аналоговый), FireWire, PS/2, LTP, SATA/PATA и тд. Так вот практически через любой интерфейс можно организовать работу по практически любому протоколу.
это ты ещё про телевидение не написал.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

baby_in_Arduino пишет:

ну надо передать пакет байтов, через аналоговый сигнал это как сделать?

например 10 цифр 32битных и две строки текста
Вопрос изначально бессмысленный.
Во-первых, обычно требуется передать аналоговый сигнал через цифровую линию, а не наоборот. Обратный пример я даже как-то придумать не могу.
Во-вторых, любая цифровая линия связи на самом низком уровне работает с непрерывными сигналами (хотя называть их аналоговыми будет неправильно).
И как в свете этого следует понимать Ваш вопрос?
 
Цитата:
 
ну хватит троллить) притягивать в электротехнике означает поднять напряжение или отпустить)
 
 
А что в электротехнике есть такие термины как "поднять напряжение или опустить"?
Вообще-то принято говорить "подать логический ноль" или "подать логическую единицу".
Вы бы хоть терминологию выучили прежде, чем что-то писать.
 
Цитата:
 
просто условность, поднято или отпущено напряжение на линии в зависимости от этого мы понимаем какой "режим"

))

Можно поподробнее: вот, скажем, подали "на линию" логический ноль - это режим записи или режим чтения? И, кстати, "линия" - это то, по чему передаются данные?

OK0
Offline
Зарегистрирован: 06.03.2020

"Обратный пример"

Азбука Морзе, телеграф... ацп

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

OK0 пишет:

"Обратный пример"

Азбука Морзе, телеграф... ацп

Это что было?

OK0
Offline
Зарегистрирован: 06.03.2020

Примеры передачи информации через аналоговую линию.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

И что из этого является аналоговой линией?

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

andriano пишет:

Это что было?

Обратный пример. :)

Не спрашивай, я нинаю, шоэтотакое. Я ЕГЭ не сдавал. :)

OK0
Offline
Зарегистрирован: 06.03.2020

andriano пишет:

Во-первых, обычно требуется передать аналоговый сигнал через цифровую линию, а не наоборот. Обратный пример я даже как-то придумать не могу.

Ну значит и у меня не получилось...

Кстати, что это за линии такие, цифровые и аналоговые? Я думал, что такой классификации не бывает...

Kakmyc
Offline
Зарегистрирован: 15.01.2018

Аналоговый сигнал в цифровой ?
Да это программы на магнитной пленке записанные.
В юности моей в широком ходу была данная технология

SLKH
Offline
Зарегистрирован: 17.08.2015

передача информации по радиоканалу с амплитудной модуляцией - это что?

baby_in_Arduino
Offline
Зарегистрирован: 21.07.2019

andriano пишет:

А что в электротехнике есть такие термины как "поднять напряжение или опустить"?

Вообще-то принято говорить "подать логический ноль" или "подать логическую единицу".
Вы бы хоть терминологию выучили прежде, чем что-то писать.
 
Можно поподробнее: вот, скажем, подали "на линию" логический ноль - это режим записи или режим чтения? И, кстати, "линия" - это то, по чему передаются данные?

ну притянуть линию к 0 или 1 точно где то читал)) потому что по умолчанию линия бывает притянута резистором к земле или питанию

как договоримся, чистая условность, если на тактовой линии логический 0 то на линии данных мы можем договорится что будет фаза чтения или фаза записи

 

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

SLKH пишет:

передача информации по радиоканалу с амплитудной модуляцией - это что?

почему сразу с амплитудной, модуляция может быть любой, и почему только по радиоканалу, а по проводам, та же телефония )))

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

baby_in_Arduino пишет:

...точно где то читал))

Может, на заборе?

Ну не надо тащить на форум то, что "где-то читал". Просто потому, что в подавляющем большинстве случаев (как известно, Интернет - это большая помойка) это "что-то" имеет весьма неприятный запах.

SLKH
Offline
Зарегистрирован: 17.08.2015

ua6em пишет:

SLKH пишет:

передача информации по радиоканалу с амплитудной модуляцией - это что?

почему сразу с амплитудной, модуляция может быть любой, и почему только по радиоканалу, а по проводам, та же телефония )))

нуу...  провод ТС может притянуть к чему-нибудь. радиоканал интереснее.

особенно всякие палсекамы - вот же накручено было.