Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
L_2_13.doc
Скачиваний:
0
Добавлен:
21.01.2020
Размер:
437.25 Кб
Скачать

Манчестерское кодирование

Манчестерское кодирование

При манчестерском кодировании каждый такт делится на две части. Информация кодируется перепадами потенциала в середине каждого такта. Единица кодируется перепадом от низкого уровня сигнала к высокому, а ноль — обратным перепадом(по стандарту IEEE 802.3, хотя по Д.Е. Томасу кодирование происходит наоборот). В начале каждого такта может происходить служебный перепад сигнала, если нужно представить несколько единиц или нулей подряд. Так как сигнал изменяется по крайней мере один раз за такт передачи одного бита данных, то манчестерский код обладает хорошими самосинхронизирующими свойствами. У манчестерского кода нет постоянной составляющей (меняется каждый такт), а основная гармоника в худшем случае (при передаче последовательности единиц или нулей) имеет частоту N Гц, а в лучшем случае (при передаче чередующихся единиц и нулей) — N/2 Гц, как и у NRZ. В среднем ширина спектра при манчестерском кодировании в два раза шире чем при NRZ кодировании.

Дифференциальное манчестерское кодирование

Дифференциальное манчестерское кодирование

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

История

Один из самых ранних образцов устройств для дистанционного управления придумал и запатентовал Никола Тесла в 1893 году.

В 1903 году испанский инженер и математик Leonardo Torres Quevedo представил в Парижской академии наук Telekino — устройство, представлявшее собой робота, выполняющего команды, переданные посредством электромагнитных волн. В том же году он получил патенты во Франции, Испании, Великобритании и США. В 1906 году в порту Бильбао в присутствии короля и большого сборища зрителей Torres представил своё изобретение, управляя лодкой с корабля. Позже он пробовал приспособить Telekino для снарядов и торпед, но прекратил проект из-за недостатка средств.

Первая дистанционно управляемая модель аэроплана была запущена в 1932 году. Затем над использованием дистанционного управления в военных целях усиленно работали во время Второй мировой войне, например в проекте немецкой ракеты земля-воздух Вассерфаль.

Первый пульт ДУ для управления телевизором был разработан американской компанией Zenith Radio Corporation в начала 1950-х. Он был соединён с телевизором кабелем. В 1955 году был разработан беспроводной пульт Flashmatic, основанный на посылании луча света в направлении фотоэлемента. К сожалению, фотоэлемент не мог отличить свет из пульта от света из других источников. Кроме того, требовалось направлять пульт точно на приёмник.

В 1956 году американец австрийского происхождения Роберт Адлер разработал беспроводной пульт Zenith Space Commander. Он был механическим и использовал ультразвук для задания канала и громкости. Когда пользователь нажимал кнопку, она щёлкала и ударяла пластину. Каждая пластина извлекала шум разной частоты и схемы телевизора распознавали этот шум. Изобретение транзистора сделало возможным производство дешёвых электрических пультов, которые содержат пьезоэлектрический кристалл, питающийся электрическим током и колеблющийся с частотой, превышающей верхний предел слуха человека (хотя слышимой собаками). Приёмник содержал микрофон, подсоединённый к схеме, настроенной на ту же частоту. Некоторыми проблемами этого способа были возможность приёмника сработать от естественного шума и то, что некоторые люди, особенно молодые женщины, могли слышать пронзительные ультразвуковые сигналы. Был даже случай, когда игрушечный ксилофон мог переключать каналы на телевизорах этого типа, потому что некоторые обертоны ксилофона совпадали по частоте с сигналами пульта.

В 1974 году фирмы GRUNDIG и MAGNAVOX выпустили первый цветной телевизор с микропроцессором управления на ИК-лучах. Телевизор имел экранную индикацию (OSD) — в углу экрана отображался номера канала.

Толчок к появлению более сложных типов пультов ДУ появился в конце 1970-х, когда компанией Би-би-си был разработан телетекст. Большинство продаваемых пультов ДУ в то время имели ограниченный набор функций, иногда только четыре: следующий канал, предыдущий канал, увеличить или уменьшить громкость. Эти пульты не отвечали нуждам телетекста, где страницы были пронумерованы трёхзначными числами. Пульт, позволяющий выбирать страницу телетекста, должен был иметь кнопки для цифр от 0 до 9, другие управляющие кнопки, например для переключения между текстом и изображением, а также обычные телевизионные кнопки для громкости, каналов, яркости, цветности. Первые телевизоры с телетекстом имели проводные пульты для выбора страниц телетекста, но рост использования телетекста показал необходимость в беспроводных устройствах. И инженеры Би-Би-Си начали переговоры с производителями телевизоров, что привело в 19771978 к появлению опытных образцов, имевших гораздо больший набор функций. Одной из компаний была ITT, её именем был позже назван протокол инфракрасной связи.

В 1980-х Стивен Возняк из компании Apple основал компанию CL9. Целью компании было создание пульта ДУ, который мог бы управлять несколькими электронными устройствами. Осенью 1987 года был представлен модуль CORE. Его преимуществом была возможность «обучаться» сигналам от разных устройств. Он также имел возможность выполнять определённые функции в назначенное время благодаря встроенным часам. Также это был первый пульт, который мог быть подключён к компьютеру и загружен обновлённым программным кодом. CORE не оказал большого влияния на рынок. Для среднего пользователя было слишком сложно программировать его, но он получил восторженные отзывы от людей, которые смогли разобраться с его программированием. Названные препятствия привели к роспуску CL9, но один из её работников продолжил дело под маркой Celadon [1].

К началу 2000-х количество бытовых электроприборов резко возросло. Для управления домашним кинотеатром может потребоваться пять—шесть пультов: от спутникового приёмника, видео-магнитофона, DVD-проигрывателя, телевизионного и звукового усилителя. Некоторые из них требуется использовать друг за другом, и, из-за разобщённости систем управления, это становится обременительным. Многие специалисты, включая известного специалиста по юзабилити Jakob Nielsen и изобретателя современного пульта ДУ Роберта Адлера, отмечают сколь запутанно и неуклюже использование нескольких пультов.

Появление КПК с инфракрасным портом позволило создавать универсальные пульты ДУ с программируемым управлением. Однако в силу высокой стоимости этот метод не стал слишком распространён. Не стали широко распространёнными и специальные универсальные обучаемые пульты управления в силу относительной сложности программирования и использования. Также возможно использование некоторых мобильных телефонов для дистанционного управления (по каналу Bluetooth) персональным компьютером.

Исследования проводились под ms-dos-совместимой системой и ИК-датчика на lpt-порту. Длительности сигналов определялись только относительные (относительно некоего условного интервала t, для разных пультов он может быть различным). Эксперименты с аппаратурой, управляемой этими пультами, показали, что она (т.е. ее декодеры) допускает отклонения временных промежутков в интервале около +-10%.

Кроме того, часто пульты используют амплитудную модуляцию сигналов частотой, например, 36 КГц. Если эту частоту изменять, датчики могут перестать реагировать на пульт. Это происходит не резко (т.е. используется аналоговая фильтрация несущей), просто по мере ухода от 36 КГц постепенно уменьшается дальность работы системы. Причем сверху это ограничение выражено более сильно, чем снизу: переход за 42 КГц практически закрывает канал, в то время как 28 КГц еще может приниматься на расстоянии около метра (это оценка двух, наугад взятых приёмников из различной аппаратуры).

RC-812. Shivaky

Кодирование методом переменной паузы, старт-бит - 1430..1470t, пауза старт-бита - 1370..1410t, затем следует 32 значащих бита и стоп-бит. Импульс бита - 190..220t, пауза "0" - 140..170t, пауза "1" - 490..510t.

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

Если первый бит = "0", за ним следует еще 31 бит. Все вместе они образуют четыре байта, ранними передаются младшие биты. Первые два байта = const = 0x0E, затем идет код клавиши, затем его инверия.

Коды клавиш (hex): mute - 14, sleep - 15, power - 0b, "1".."9" - 00..08, "0"/av - 09, -/-- - 0a, tv/video - 0f, Up - 11, Down - 10, Left - 12, Right - 13, Menu - 1c, sys - 0c, picmode - 0e, pic - 1d, disp - 16, calendar - 1f. Есть еще другая версия для схожего по кодированию пульта (название, к сожалению, не сохранилось): disp - 19, prev - 1a, sleep - 1f, picsel - 1e, chan - 10/11, vol - 1c/1d, standby - 14, mute - 15.

105-210a. GoldStar

Кодирование методом переменной паузы, старт-бит - 2880t (7.88мс), пауза старт-бита - 1400t (3.6мс), затем следует 32 значащих бита и стоп-бит. Импульс бита - 200t (570мкс), пауза "0" - 160t (400мкс), пауза "1" - 503t (1250мкс).

Если пауза старт-бита уменьшается до 685t (1.7мс) - это признак команды "повтор", после такой паузы передается только стоп-бит.

Четыре байта посылки (ранними передаются младшие биты): первый const = 0x04, второй const = not 0x04 = 0xFB, третий - код клавиши, четвертый - его инверсия.

Коды клавиш (hex): pwr - 08, mute - 09, "0".."9" - 10..19, -/-- - 1c, rec - 1b, Up - 00, Down - 01, Left - 03, Right - 02, Ok - 44, tv/av - 0b, menu - 43, psm - 4f, sleep - 0e, qv - 1a, pic - 0c.

6710 v00008a. LG

Кодирование по rc5, но по сравнению с имеющимся в наличии philips'овым пультом (от VCR), вся посылка сильно отличается по темпу передачи. Может это дефект конкретного пульта, может специально так сделано, но телек, к которому этот пульт прилагался, ловит его легко. Также как и видак легко ловит свой philips'oвый пульт. Но пульт от видака хотя и может управлять телевизором, но не дальше чем с 1.5-2 метров...

Код системы: 0.

Коды клавиш (hex): pwr - 0c, mute - 0d, "0".."9" - 0..9, -/-- - 0a, ok - 25, tv/av - 38, menu - 3b, psm - 0e, qview - 22, sleep - 26, sys - 0f, pseudo - 24, dial - 23, eye - 12, ssm - 16, Up - 20, Down - 21, Left - 11, Right - 10.

rmt-cz130. Sony

Кодирование методом переменного импульса (аналогично переменной паузе, но наоборот - длительность импульса зависит от значения бита, а паузы - фиксирована). Старт-бит - 780t, пауза старт-бита 190t, импульс "0" бита - 195t, импульс "1" бита - 390t, пауза бита - 190t.

Значащих бит в посылке 14, затем идет стоп-бит (или я вру и его нет ? зачем он в этом методе ?). Все биты образуют слово, первым идет младший бит.

Коды клавиш (hex): "1".."9" - 3200..3208, mode - 2211, 0/10 - 320c, >10 - 320d, >> - 3232, || - 3239, [] - 3238. Клавиши << и >> при кратковременном нажатии дают коды 3230 и 3231 соответственно, при удержании код меняется (т.е. эти клавиши отправляют код не сразу после нажатия - сначала анализируется длительность) на 323a и 323b.

Любая посылка трижды повторяется. Длительное удержание клавиш вызывает периодическую отправку их кода без изменения формата сообщения.

rc-tc400. Aiwa

Кодирование методом переменной паузы, старт-бит - 16t, пауза старт-бита - 8t, импульс бита - 1t, пауза нулевого бита - 1t, пауза единичного бита - 3t.

Всего передается 42 бита + стоп-бит. 7 единиц, 13 нулей, 6 единиц, 8 бит команды, 8 бит контроля (инверсия команды). Биты команды и контроля образуют байт, первым передается младший бит.

Коды клавиш (hex): power - 00, eject - 48, auto - 5c, track+ - 47, track- - 46, rec - 14, << - 12, > - 15, >> - 11, || - 17, [] - 1a, repeat - 5f.

Схожее кодирование у duraband dv-100, но перед кодом команды передается меньше бит.

nv-mv20, gcu-s. Panasonic=Matsushita

Кодирование методом переменной паузы, старт-бит - 1440t, пауза старт-бита - 720t, импульс бита - 163t, пауза нулевого бита - 155t, пауза единичного бита - 512t.

Всего передается 48 бит + стоп-бит. Биты образуют 6 байт, первым передается младший бит. Байты: 0, 1 = 0x02, 0x20; 2 - система: 0x90 - vcr, 0x80 - tv; 3, 4 - команда, 5 - контрольная сумма, вычисляется как исключающее ИЛИ по байтам 2 xor 3 xor 4.

Коды клавиш (hex):

  • Управление TV: power - 3d, av - 5, volume+ - 20, volume- - 21, ch+ - 34, ch- - 35.

  • Управление VCR: power - 3d, disp - 15f, reset/clear - 54, tr+ - 34, tr- - 35, pic - 529, osd - 57, inp - c0, <I - 49, i> - 4a, || - 06, Rec - 8, menu - 156, > - a, prog - 53a, << - 2, ok - 158, >> - 3, jet - 52f, [] - 0, nav - 528, progr - 101, guide - 530, speed - 10a, timer - b4, date+/- - 192/193, chprog+/- - 190/191, dataon+/- - 194/195, dataoff+/- - 196/197.

Анализ этого магнитофона и его пульта также позволил обнаружить ряд скрытых функций: eject - 1, "1".."9" - 10..18, "0" - 19, poweron - 3e, poweroff - 3f, "re" <-> "count" - 55, timeron - b5, timeroff - b6, clear_all_program - 109, "standart" - 3a1, "dyn" - 3a2, "soft" - 3a3, "cart" - 3a4, clear_all_memory - 3fa. Часть этих функций, несомненно, предназначена просто для отладки, настройки, диагностики - в общем не для пользователя. Но тем не менее, мне кажется, если бы выброс кассеты был сделан отдельной кнопкой на пульте (раз уж в протоколе контролера она есть) - это было бы удобнее, чем держать "стоп" три секунды. Тем не менее, некоторыми из этих кодов я стал пользоваться в компьютерной программе, которая позволяет программировать видак на запись без длительного юзанья пульта.

Есть еще ряд кодов, на которые магнитофон реагирует, но я не понял смысл: например, на индикаторе зажигается две точки ... и что ? Явно это указывает на какой-то специальный режим, но в чем он проявляется я не понял.

rc-5. Philips 296

Здесь используется система rc5, но есть одна тонкость, которую я не встречал в популярной (и не очень популярной) литературе: второй передаваемый бит, который везде указывается как const = 1, в данном пульте передается как "0" для клавиш tr+ и tr-. Другие клавиши передают его как положено - единицей.

Коды клавиш (hex):

  • Управление TV (sys=00): power - 0c, mute - 0d, volume+ - 10, volume- - 11, ch+ - 20, ch- - 21.

  • Управление VCR (sys=05): power - 0c, eject - 2d, tv/vcr - 3e, speed - 3a, mem - 3b, 2x - 2a, "0".."9" - 0..9, ch+ - 20, ch- - 21, tr+ - d, tr- - 0e, ex/st - 0f, menu - 1d, > - 35, slow - 28, clear - 31, << - 32, || - 29, >> - 34, rec - 37, [] - 36.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]