Форум программистов, компьютерный форум, киберфорум
Электроника и радиотехника
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.62/115: Рейтинг темы: голосов - 115, средняя оценка - 4.62
0 / 0 / 0
Регистрация: 16.03.2013
Сообщений: 4,224

простой P2P протокол на базе кодировки манчестер

14.10.2015, 18:12. Показов 22298. Ответов 45
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
глобальная идея - сделать простую проводную сеть с одним сигнальным и двумя силовыми проводами для освещения
провода уже монтируют, а я сижу изобретаю велосипед)

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

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

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

1) в рамках того же самого обработчика прерываний таймера который уже использован для передачи настроить счетчик который будет считать такты таймера
минус в этом варианте в том, что соотношение 2 вызова на один бит нужно увеличить как минимум до 4 вызовов на один бит
у нас основная сложность в манчестере - определить середину бита, потому что именно направление изменения статуса входа в середине периода дает нам значение бита данных
так вот при четырех вызовах на бит наш счетчик гарантированно досчитает до 3 к тому моменту когда возникнет следующая середина бита

2) задействовать значение железного счетчика таймера МК (OCR для AVR)
сделать 16 битный счетчик 8 бит которого это железный счетчик таймера, а еще 8 бит - счетчик прерываний по переполнению таймера
при получении стартового бита запоминаем значение этого 16 битного счетчика и используем его как мерило длины одного бита при последующем анализе
берем отклонение 25% и если очередное изменение значения входа соответствует значению счетчика от 75-125% то считаем, что это очередная середина бита
для точности после каждой середины можно сбрасывать железный счетчик

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

пока отлаживаю первый вариант
и получил большие ошибки с определением середины бита
пришлось увеличить соотношение - 8 прерываний таймера на один бит, ошибки пока пропали, но и скорость тестирования всего 500 бит/сек

кто реализовывал манчестера, поделитесь опытом и идеями
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.10.2015, 18:12
Ответы с готовыми решениями:

Приложение p2p и протокол PNRP
Как с помощью System.Net.PeerToPeer можно создать подключение через интернет между равноправными участниками(пирами)? При условии что...

Как правельно написать простой протокол ?
В универе задали задание, написать простой протокол для обмена клиента и сервера. Так вот, как ето делается ? Я тут нарил пару примеров с...

P2P шара, или P2P облако
Подскажите, существует ли на сегодняшний день возможность предоставлять доступ к файлам/папкам по принципу Peer-to-Peer без установки доп....

45
2 / 2 / 0
Регистрация: 11.02.2011
Сообщений: 187
15.10.2015, 22:01
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от oxytt
как на стандартном (переносимом) функционале UART сделать манчестер ну или другой вариант с одним проводом?
по вашим ссылкам ответа на этот вопрос нет
Ссылки по манчестеру выпрямил.
А если очень хочется с одним проводом то есть т.н. "токовая петля" помехоустойчивость которой и дальнобойность при соотв. скоростях проверена реальными объектами и ГОДАМИ эксплуатации в АСУ ТП и не только.
0
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,230
15.10.2015, 23:51
задам тупой вопрос. ведь настоящих однопроводных интерфейсов не бывает, должна быть какая-то земля. что тут будет в качестве нее? нулевой провод? т.е. на каждом девайте надо следить, где фаза, а где нуль?
0
0 / 0 / 0
Регистрация: 16.03.2013
Сообщений: 4,224
16.10.2015, 00:54
Цитата Сообщение от Ymk
задам тупой вопрос. ведь настоящих однопроводных интерфейсов не бывает, должна быть какая-то земля. что тут будет в качестве нее? нулевой провод? т.е. на каждом девайте надо следить, где фаза, а где нуль?
Все верно
Один провод из трёх будет совмещать в себе ноль сигнальный и минус питания
Все подключения стационарные, провода имеют цветную маркировку, так что особой проблемы понять какой провод за что отвечает нет
0
0 / 0 / 0
Регистрация: 16.03.2013
Сообщений: 4,224
16.10.2015, 01:26
Цитата Сообщение от smort_pys
Я вообще все по ЛАН делаю с ВЕБ управлением и ТСР.
Там вообще с красотой интерфейса пользователя и совместимости проблем минимум.
У меня будет гейт в Ethernet сеть для управления и настройки
Но каждое устройство делать с IP интерфейсом это не целесообразно
Будет много маленьких плат с интегрированным драйвером светодиодов. Места под rj45 даже без трансформатора там нет
0
1 / 1 / 0
Регистрация: 18.01.2012
Сообщений: 1,418
16.10.2015, 09:56
Цитата Сообщение от oxytt
какие преимущества у широтной модуляции перед манчестером?
Простейшее кодирование и декодирование. Причем, как и у манчестера, нет требований к точности тика, поэтому кварц можно не ставить.
Цитата Сообщение от oxytt
что то типа K-line? обсуждали это несколько месяцев назад когда я выбирал интерфейс
не нашлось тогда примера успешного применения, а по манчестеру есть пример от Shads для очень похожей к моей задаче
У вас все равно физическая реализация одна и та же, а тип кодирование уже не сильно повлияет на функционирование системы.
0
0 / 0 / 0
Регистрация: 17.01.2011
Сообщений: 92
22.10.2015, 10:42
Цитата Сообщение от itysiy
Цитата Сообщение от oxytt
какие преимущества у широтной модуляции перед манчестером?
Простейшее кодирование и декодирование. Причем, как и у манчестера, нет требований к точности тика, поэтому кварц можно не ставить.
Цитата Сообщение от oxytt
что то типа K-line? обсуждали это несколько месяцев назад когда я выбирал интерфейс
не нашлось тогда примера успешного применения, а по манчестеру есть пример от Shads для очень похожей к моей задаче
У вас все равно физическая реализация одна и та же, а тип кодирование уже не сильно повлияет на функционирование системы.

Можно также посмотреть на реализацию HDMI-CEC управление. На физическом уровне реализована проверка подтверждения приема данных, синхронизация начала посылки. аппаратная и логическая адресация, возможность посылки команд разной длины., арбитраж шины. Я когда разобрался со всем этим - то понял , что толково сделано.
Кстати там широтная модуляция.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.10.2015, 10:42

Проблема с отображением кодировки в Базе Данных
Всем привет! Такая задача Необходимо сохранять в БД (SQL Server) текст в кодировке UTF-8 Кодировку текста меняю следующей...

Декодирование Манчестер-2
Я не электронщик. И не знаю терминологии. Нужно из сигнала получить числа (например 10101010011). Есть синусоидальный оцифрованный сигнал...

как найти все значения в базе при вводе поиска в разной кодировки?
Подскажите может кто знает! Как при вводе в поиск найти все значения в базе не смотря в какой кодировке строка записана. Например: при...

Алгоритм кодирования Манчестер 2
код манчестер 2 используется в частности, и в протоколе ethernet Возник вопрос популярного демо-описания алгоритма...

[Хэлп] Нужен манчестер на сях
Привет всем! Подскажите пожалуйста, может есть у кого сорцы сабжа? Сфера применения - неспешная передача состояний...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
46
Ответ Создать тему
Новые блоги и статьи
сукцессия 29. Переход от одних деревьев на другие делать более или менее вероятностным?
anaschu 12.07.2026
Насколько смена типов микоризы — исключительное событие в двухвековой сукцессии? Оценка вероятности в пространстве параметров В текущей версии модели успешно реализован ключевой механизм. . .
сукцессия 27. Думаю, как переделывать уже написанную статью с планами на сукцессию.
anaschu 12.07.2026
Анализ соответствия модели требованиям Реализованные компоненты: Механизм закисления почвы через протонную помпу Конкуренция между типами микориз pH как триггер сукцессии C/ P соотношение. . .
Сукцессия 26. Мат модель создана.
anaschu 12.07.2026
Модель смены растительных сукцессий посредством управления грибами работает внутри небольшой ячейки почвы, восстанавливающейся после пожара, где ненадолго бывшее царство хвойных снова захватили. . .
Решил проблему с ошибкой пагинации сообщений с сервера на алгоритме обхода дерева "Эстафета хвоста".
Hrethgir 12.07.2026
Проблема была в том, что удалялась именно новая кнопка, а не старая. Ни один ИИ не обнаружил это, а сам я смог только когда с работой стало попроще и когда заставил работать будущее автономное. . .
сукцессия 25. Хронология ошибок
anaschu 12.07.2026
# От 50-тонного гриба до устойчивого леса: хроника ошибок при построении модели вековой сукцессии микоризы ## О чём эта статья В процессе построения ОДУ-модели (система дифференциальных. . .
сукцессия 24. Промежуточное общее описание модели
anaschu 12.07.2026
Хендофф: модель АМ→ЭКМ сукцессии микоризы (ризосфера, 50 лет) Содержание проекта Симуляция вековой (50 лет) экологической сукцессии в почве леса Основные участники: АМ-гриб, ЭКМ-гриб,. . .
сукцессия 23. Более физиологичная физиология, более экологичная экология, более диффурные диффуры.
anaschu 12.07.2026
Что реально нашли и починили за эти 5 часов Правило Линдемана (КПД конверсии сахара в тело, kEff) — раньше 100% полученного углерода шло прямо в биомассу гриба; теперь только kEff=0. 5 (после. . .
сукцессия 22. От артефактов к физиологии: калибровка агентной модели грибной сукцессии для воспроизведения сезонной динамики и pH-плато
anaschu 11.07.2026
Аннотация В данной работе представлена калибровка агентной модели динамики грибных сообществ (fungal-succession), направленная на устранение нефизичных артефактов (коллапс биомассы, мгновенное. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru