To Romario: Насчет синхронизации и не только...
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Гудвин 20 мая 2003 г. 03:14

>>>>Синхpонизиpовать UART следyет пеpедачей не
>>>>менее 8 комбинаций AAh 55h.
>>это как понять? насколько я знаю логика UART начинает работать после
>>старт бита и заканчивается после стоп бита. т.е. что было ДО какого >>то байта UART'у безразлично. у него же нет истории. Тогда зачем для ее
>>синхронизации надо не менее 8 комбинаций?:) Или что-то я не понимаю.

А вот эта фишка и является изюминкой, и проверял я именно ее...
То, что с помощью UART можно сформировать сигнал, пригодный для передачи по радиоканалу вполне понятно. Принять вроде тоже. Но существует (существовала ;) проблема засинхронизировать UART с началом пакета, т.к. сигнал с компаратора данных в паузах хаотичен (шумы приемника). Вот автор и обнаружил метОду - последовательность кодов 0xAA,0x55 в количестве 8 штук надежно засинхронизирует UART в конечном итоге (старт бит в принятом сигнале установится в "нужном месте", если отбрасывать принятые байты с ошибкой фрейма), заодно подготовит схему приемника (все равно перед пакетом данных нужна преамбула). Я сначала попробовал без радиоканала, просто генерил микроконтроллером хаотичный поток бит с разными скоростями, а произвольный момент времени пулял валидный пакет - срабатывает стопроцентно...
Пример последовальности: [10-12 раз преамбула (0xAA,0x55)],[0xCC - маркер начала пакета - не входит в число из 16 "правильных" кодов,но тоже без постоянной составляющей],[собственно сам пакет с контрольной суммой]. Сигналом начала пакета является последовательность кодов 0xAA,0x55,0xCC, принятая без Frame_Error.
Вот и выходит, что в _простейших_ устройствах на МК можно в процедуре обработки прерывания UART без напрягов (UART 2400 бит/с, реальная скорость 1000 бит/c) обрабатывать входной поток, отслеживая FE,"правильные байты", считать контрольную сумму,выделять пакеты, оставляя все остальное время на основную задачу. (Да и PC под масдаем не перетрудится :)

При таком подходе в отличие от манчестера невозможна побитовая синхронизация, но в приличных аппаратных UART в середине битового интервала как правило осуществуетляется мажорирование?(мажоритирование? мажоритация ? мажоритуривание? :-), что с некоторой долей вероятности слегка поможет при приеме зашумленного сигнала - в принципе для того и было задумано...
Для экспериментов с радиоканалом использовал дуплексные радиомодули от китайского радиотелефона GE (ПисАл о них несколько страниц назад "Радиомодуль за $10")...

Кстати, у меня к Вам, как к специалисту по этому делу есть пара-тройка вопросов:
В тему: Как (именно в этом случае), сильно не напрягаясь сгладить цифровые данные c UART с целью сужения спектра сигнала ? (Типа Gaussian).
Во всех радиотелефонах, не использующих микросхемы MSK модемов,сигнал на модулятор просто подается с ножки процессора через RC цепочку...

OFF: Достаточно высокие цены на такого рода продукцию связаны с ГИЭ и сертификацией ?

OFF: Так все-таки можно-ли использовать передатчики диапазона 433.92, мощностью до 10 мВт,скажем так - типа RFB433 от BlueChip, не получив при этом по шапке от чиновников, лишаемых куска пирога ?


Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru