Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Кормилин_2003_Устрой.docx
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
576 Кб
Скачать
☆
      1. Пульт ду на основе контроллера рса84с122а

Контроллер РСА84С122 является автономным низковольтным 8-разрядным контроллером с малым энергопотреблением, предназначенным для запуска схемы на инфракрасных диодах в переносном пульте дистанционного управления. Минимальное значение питающего напряжения равно 2 В. Контроллер РСА84С122 функционирует на базе центрального процессора серии 84СХХХ с ПЗУ 1 Кбайт и оперативной памятью 1 Кбайт. Кроме указанного ЦП, в состав ИМС входят следующие дополнительные компоненты:

  • стробирование прерываний;

  • модулятор для формирования импульсной последовательности с регулируемыми параметрами, такими как число импульсов в пакете, длительность импульсов и коэффициент заполнения импульсной последовательности;

  • сторожевой таймер (Watchdog Timer) для предотвращения неправильного функционирования либо для блокирования передатчика;

  • генератор импульсов частотой от 1 МГц до 5 МГц;

  • формирователь выходного (до 30 мА) тока.

Следует отметить другие существенные показатели контроллера РСА84С122.

  • Низковольтное питание (от 2 В до 5.5 В) с малым током потребления.

  • Два входа тестирования Т0 и Т1. Вход Т0 можно использовать в качестве входа прерывания, а Т1 можно использовать в качестве входа 8-разрядного счетчика.

  • Три источника одноуровневого векторного прерывания: внешнее прерывание (T0/INT и порт 1 для запуска с клавиатуры), прерывание по таймеру-счетчику (Т1) и прерывание от аппаратного модулятора.

  • Восьмиразрядный программируемый таймер с пятиразрядной предварительной пересчетной схемой. Диапазон рабочих температур от -20° С до +70° С.

  • Дежурный режим «Idle» и режим останова «Stop» для сокращения энергопотребления в интервалах между нажатием функциональных клавиш на переносном пульте дистанционного управления.

  • Есть две модификации контроллера: РСА84С122А в пластмассовом SOP-корпусе на 24 вывода, с опросом клавиатуры 8 на 8, а также РСА84С122В в пластмассовом SOP-корпусе на 20 выводов, с опросом клавиатуры 6 на 6.

Пример переносного пульта дистанционного управления с автономным контроллером РСА84С122А фирмы Philips, выполняющим функции передатчика команд в стандарте RC-5, приведен на рисунке 2.5.

Рисунок 2.5 - Переносной пульт ДУ на контроллере PCA84C122A

Переносной пульт дистанционного управления имеет 60 клавиш и боковой ползунковый переключатель (S1) для задания альтернативных функций тринадцати клавиш. Каждая из команд формируется нажатием одной из клавиш, в результате которого происходит непосредственное подключение соответствующей линии ввода/вывода порта 0 (линии опроса) к одной из линий ввода/вывода порта 1 (линия считывания).

Постоянное напряжение питания (номинальное значение 3 В) передатчика обеспечивают две последовательно соединенных батареи с параллельно подключенным конденсатором для сглаживания пульсаций и стабилизации тока цепи ИКД. Коммутация тока цепи ИКД (около 0.8 А) обеспечивается транзистором. Ток базы транзистора через ограничивающий резистор подается непосредственно с выхода контроллера в виде пакета импульсов. Боковой переключатель S1 замыкает вход Т1 контроллера на общую шину для задания альтернативных функций 13 клавиш. Частота встроенного генератора задается керамическим резонатором на 4.3 МГц.

Программное обеспечение пульта ДУ

Программный пакет дистанционного управления RC-5 для РСА84С122А образуют четыре модуля программ.

  1. Установка системы в исходное состояние и ожидание момента срабатывания клавиши.

  2. Опрос клавиатуры.

  3. Формирование командного слова дистанционного управления.

  4. Передача командного слова.

Рассмотрим программные модули подробнее.

Установка системы в исходное состояние и ожидание момента срабатывания клавиши

После инициализации устанавливается НИЗКИЙ логический уровень на линиях опроса клавиатуры (строки), при этом контроллер находится в STOP-режиме.

При нажатии клавиши соответствующая линия считывания (столбцы) переходит на НИЗКИЙ логический уровень. Нулевой сигнал поступает на вход прерывания INT и контроллер переключается в рабочий режим. В этот момент запускается модуль опроса клавиатуры.

Опрос клавиатуры

Все линии опроса (строки) устанавливаются на ВЫСОКИЙ логический уровень. Затем они последовательно переключаются на НИЗКИЙ логический уровень. При каждом переключении осуществляется проверка всех линий считывания на выявление нажатой клавиши. В обнаружении нажатой клавиши запоминается номер соответствующей клавиши и, если нажата только одна клавиша, выставляется флаг «Одна клавиша» (One Key). Повторный опрос клавиатуры спустя 20 мс устраняет «дребезг» контактов. Если подтверждается, что нажата та же самая клавиша, устанавливается флаг «Переключение» (Toggle) - контроллер переходит к выполнению модуля формирования командного слова дистанционного управления. В случае нажатия нескольких клавиш передача блокируется. Если при повторном опросе нажатой клавиши не обнаружено, контроллер переходит в STOP-peжим.

Формирование командного слова

Аппаратный модулятор и сторожевой таймер РСА84С122А устанавливаются в исходное состояние. Проверяется состояние флага «Переключение» (Toggle) для слежения за моментом завершения временного интервала устранения «дребезга» контактов. При отсутствии установки такого флага процессор ждет период, равный времени повторения слова команды (114 мс).

Затем формируются и запоминаются стартовые биты и системные биты командного слова. Номер нажатой клавиши преобразуется в соответствующий код команды. Запускается последний программный модуль.

Передача командного слова

При использовании керамического резонатора на 4.3 МГц (Рисунок 2.5) частота модуляции равна 35.83 кГц (t = 27.91 мкс), а не 36 кГц. Для формирования пакета импульсов с коэффициентом заполнения 0.25 аппаратный модулятор в РСА84С122А устанавливается на длительность интервала «включено», равного 6.977 мкс, и интервала «выключено» - 20.925 мкс.

При двухфазной модуляции (код Манчестер) число формируемых импульсов с частотой 36 кГц в «пачке» определяется комбинацией двух соседних бит. Если логические уровни этих двух бит совпадают, то формируется 32 импульса. Если такая комбинация имеет вид «1-0», то формируется 64 импульса. В случае комбинации вида «0-1» импульсы не формируются.