Проекты :: Цифра :: Декодер пульта Сони.

Декодер пульта Сони.15/07/2006

Нам потребуется для реализации декодера:

1. Микроконтроллер фирмы Atmel AT90S8535-8AC или AT90S8535-8AI
2. Фотоприемник TSOP1736, или подобный
3. 8 светодиодов
4. Программатор AvReal или любой другой на ваш выбор
5. Преобразователь уровня RS232 в TTL и наоборот
6. Разъем DB9M, штыревая линейка, 2 перемычки, 
      кусок стеклотекстолита и т.п. причиндалы
7. Компилятор IAR C v2.28a.

Исходя из логики протокола, наиболее разумно функцию декодирования реализовать с помощью аппаратного прерывания процессора и измерения интервалов/импульсов с помощью таймера. Выставляя режим срабатывания прерывания по переднему (posedge) или заднему (negedge) фронту импульсов данных, можно однозначно декодировать биты. Когда на фотоприемник не поступает пакет данных, на его выходе сохраняется уровень лог. 1. Установив срабатывание прерывания по заднему фронту, ожидаем приход стартового импульса. Как только сработало прерывание по заднему фронту, запускаем таймер, и устанавливаем режим срабатывания прерывания на положительный фронт. По прерыванию по положительному фронту измеряем время низкого уровня. Если оно (время импульса) лежит в интервале 4T значит это стартовый импульс. Если нет, возвращаемся вначало. Если стартовый импульс прошел, измеряем последующие интервалы: если 2Т то 0, если 3Т то 1.

Схема устройства лежит тут. Штыри Х2 и Х3 сделаны для подкючения программатора или порта RS232. После декодирования команды, её код высвечивается на диодах HL1-HL8. При желании можно воспользоваться программой Sony command explorer, которая с помощью RS-232 опрашивает процессор и выдает код команды. Код прошивки процессора тут.

написал: Wh`te
Комментарии

Здесь никто ничего не написал. Вы можете быть первым.

Оставить сообщение
Имя:                                                        E-mail:
 

Сообщение

Антибот (введите 11*1*11, заменив "*" на "-"):