Поиск по сайту:

 


По базе:  

микроэлектроника, микросхема, микроконтроллер, память, msp430, MSP430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, SED1335, mega128, avr, mega128  
  Главная страница > Обзоры по типам > Микроконтроллеры > MAXQ

реклама

 




Мероприятия:




Реализация низкоскоростного инфракрасного приемника/передатчика при помощи Таймера 2

Микроконтроллер семейства MAXQ может обеспечить аппаратную часть, облегчающую реализацию низкоскоростной инфракрасной (ИК) связи. Чтобы использовать в своих интересах встроенные аппаратные модули, микроконтроллер должен содержать хотя бы один модуль Таймера 2; этот таймер должен иметь не менее двух выводов и должен быть настроен для работы в определенном режиме.

Соответствующий Таймер 2 должен быть настроен на работу в режиме двух 8- битных таймеров. А точнее, он должен быть настроен как 8- битный счетчик и 8- битный таймер, формирующий ШИМ. Если для реализации IRRX (ИК приемника) используется вывод Т2, то бит T2OE [0] должен быть сброшен в 0. Если для реализации IRTX (ИК передатчика) предполагается использовать вывод T2PB и аппаратные возможности микроконтроллера, то бит T2OE [1] должен быть сброшен в 0. 8- битный Таймер/ШИМ используется для формирования поднесущей, а 8- битный счетчик - для формирования огибающей. Предполагается, что преобразование ИК сигнала в цифровой осуществляется внешней схемой или модулем.

Формирование поднесущей при помощи вспомогательного Таймера 2

Формирование поднесущей частоты всегда будет выполняться 8- битным Таймером/ШИМ (T2L). Период и скважность поднесущей определяются параметрами настройки перезагрузки и регистрами сравнения (см. описание выше). На рисунке 31 приведена функциональная схема модуля формирования и передачи поднесущей к выводу T2PB/IRTX. Обратите внимание, что бит T2POL [1] еще контролируется.

Схема формирования поднесущей и огибающей передаваемого ИК сигнала
Рисунок 31. Схема формирования поднесущей и огибающей передаваемого ИК сигнала

Модулятор передатчика

Формирование огибающей осуществляется 8- битным счетчиком (T2H). Обычно, в соответствии со значениями битов CCF [1:0], в качестве источника синхросигнала для 8- битного счетчика используется вывод T2A. Однако, при активизации ИК модуля (IREN = 1), счетчик тактируется сигналом поднесущей, формируемой на выводе T2L. Это позволяет программно определять количество циклов поднесущей, проходящих через регистр T2RH до его переполнения. Бит T2POL [1] определяет начальное состояние вывода T2L и фронт, по которым производится счет T2H. Если T2POL [1] = 1, то начальное значение T2L равно 1 и считаются только нарастающие фронты T2H. Если T2POL [1] = 0, то начальное значение T2L равно 0 и считаются только спадающие фронты T2H. Отдельный бит регистра (IRBB) используется для того, чтобы определить, стробируется ли вывод T2L или следующие X циклов поднесущей будут переданы. Значение X, как говорилось выше, можно задавать при помощи регистра перезагрузки. Когда IRBB = 1 и IRTX = 1, то выход T2L подключается к выводу T2PB/IRTX. Когда IRBB = 0 и IRTX = 1 (условие стробирования), то на выводе устанавливается состояние, определенное значением бита T2POL [1].

Пример бифазного кодера
Рисунок 32. Пример бифазного кодера (T2RH остается установленным)

Пример кодирования ИК сигнала (передатчик)

Для любой схемы кодирования, необходимые установки генератора поднесущей T2L должны быть установлены вместе с желательным состоянием бита T2POL [1]. Состояние бита T2POL [1] вступает в силу один раз, когда IREN = 1 и IRTX = 1.

Для двухфазного кодирования, значение перезагрузки T2H (T2RH) будет устанавливаться для счета количества поднесущих импульсов (Х) в первой половине длительности бита. Бит активизации ИК передатчика IRTX должен быть установлен в 1 для блокировки функции вывода Т2, используемого в режиме приема. Для формирования стартового условия стробирования на выводе T2PB бит IRBB изначально будет сброшен в 0. В этой точке биты запуска таймера для обоих 8- битных таймеров/счетчиков должны быть установлены. Сразу после запуска таймеров можно задать требуемое значение служебного бита IRBB для каждого передаваемого бита. При каждом переполнении T2H содержимое T2RH используется для перезагрузки, IRBB - для определения, разрешено ли подключение выхода T2L, на котором формируется поднесущая, к выводу или нет. Этот процесс продолжается пока необходимое количество бит не будет передано, после чего ИК модуль переходит в режим приема или отключается.

Для кодирования длительности бита, значение перезагрузки T2RH может использоваться для определения 0 или 1 должна быть передана. В этом случае, управляющая функция IRBB останется такой же и обычно будет изменяться при каждом переполнении. На рисунке 33 приведен пример кодирования длительности бита.

Пример кодирования длительности бита
Рисунок 33. Пример кодирования длительности бита (T2RH изменяется)



<-- Предыдущая страница Оглавление Следующая страница -->





 
Впервые? | Реклама на сайте | О проекте | Карта портала
тел. редакции: +7 (995) 900 6254. e-mail:info@eust.ru
©1998-2023 Рынок Микроэлектроники