Универсальный контроллер CD-ROM-магнитофон с дистанционным управлением

         

Такая структура , позволяет управлять не только ЛПМ «ВЕГА»


Теперь несколько слов о изготовлении контроллера. Как уже было сказано, в минимальном варианте достаточно собрать базовый блок, содержащий две микросхемы и несколько разъемов (ну и немного резисторов/конденсаторов, конечно). Все это можно достаточно быстро спаять на макетке. Шифратор клавиатуры можно также собрать на этой же макетке, или разместить вместе с кнопками на отдельной плате. Все, теперь «прошив» микропроцессор вы можете уже управлять CD-ROMом или магнитофоном. При желании, можно на этой же макетке установить микросхему дешифратора ДУ (1506ХЛ2 и т.п.).  Если используется полная схема (CD&Tape), то регистр удобнее разместить на плате контроллера, а цепи согласования с ЛПМ отдельно. Идеальным конечно было бы использование оптронных согласователей уровня, и питание ЛПМ от отдельного источника питания (обмотки трансформатора) – это уменьшит помехи от электромоторов и при срабатывании электромагнитов. Кварцевый резонатор микропроцессора можно использовать в диапазоне от 1 до 8 Мгц, при этом могут понадобится небольшие изменения в ЕЕПРОМ параметров.

 

Поскольку дать объеме статьи дамп прошивки контроллера невозможно (да и набивать ее вручную несколько затруднительно и чревато ошибками), за ним придется обратиться в Интернет. Полную информацию можно найти на веб-сайте «Радиохобби» [6] и домашней страничке автора [4]. Для программирования микропроцессора AT90S8515 непосредственно в плате контроллера служит разъем J4. При этом можно воспользоваться фирменной программой Atmel AVR ISP [3] или программой AVReal Александра Редчука (Real@real.kiev.ua) [5]. Первая предусматривает использование интерфейса STK-300, показанного на рис. 4, вторая может работать или с Altera Byte-Blaster (рис. 5), или же вообще при помощи нескольких проводков (рис. 6). Все эти интерфейсы расчитаны на подключение к принтерному порту персонального компьютера. Более подробно о записи прошивки можно прочитать в описании соответствующего ПО.

Рис 4,5,6.

Кроме записи программы, в контроллер также необходимо записать начальное содержимое ЕЕПРОМ, содержащее настройки и параметры.
После этого, как обычно пишут в описании схем – если схема собрана без ошибок, она должна сразу заработать. После проверки правильности монтажа можно подключать интерфейс программирования и подавать питание (подача питания необходима при программировании), при этом должен быть установлен джампер “setup”. Первым признаком правильности, будет нормальная запись прошивки. Затем следует отключить программатор (для некоторых интерфейсов можно этого и не делать). Если все нормально, контроллер должен войти в режим установок параметров, после чего можно выставить коды кнопок и временные задержки для ЛПМ. Если предполагается работа в режиме CD Only с кодами кнопок 0-7, то параметры можно не устанавливать, а перейти сразу в рабочий режим (сняв джампер), но проверить режим установок не мешает хотя бы для того, чтобы убедится в правильной работе кнопок и индикатора.

В любом режиме работы желательно проконтролировать осциллоскопом выдачу строба STR на регистры ЛПМ и индикации (даже при отсутствии самих регистров). Должны быть короткие импульсы с периодом 20мс. В случае отсутствия индикации нужно проконтролировать сигналы Clk, DI, DI’ – они должны представлять собой пачки импульсов, с периодом повторения 200 мс. (В случае если частота кварца отличается от 4мгц, эти периоды можно подкорректировать). В режиме CD, при отсутствии самого привода, на индикаторе должны быть прочерки. Далее можно подключать привод и проверять все режимы работы. В режиме Tape можно подключить на выход регистра вместо ЛПМ восемь светодиодов, и при отсутствии сигнала закрытия подкассетника проверить полностью все режимы. Рекомендуется при такой проверке для наглядности установить в параметрах временные задержки большей длительности.

Литература:

1.      «Радиохобби» 3/99  с. 53

2.      «Радио» 6/86 с.48, 7/86 с. 23

3.      www.atmel.com

4.      www.geocities.com/altor.geo

5.      www.chat.ru/~avreal

6.      radiohobby.da.ru

Изменения после выхода журнала:

К сожалению при переносе схем из Оркада в Ворд, клипбоард не всегда все делает корректно L

(в данной редакции статьи эти изменения уже сделаны). Также не забудьте  посмотреть прилагаемый файл eeprom.txt



1)      Вывод 21 IDE разбема никуда не подключен.

2)      На схеме STK-300 : вывод 5 ЛПТ идет на вывод 1 микросхемы, вывод 4 ЛПТ – на  вывод 19 микросхемы. Выводы 18 и 19 ЛПТ не подключаются.

3)      В таблице параметров нумерация не 0-31 а 1-32, что соответствует показаниям дисплея в режиме установки.

4)      Параметр 17 – «Режим работы» исправлен, 0 – CD&Tape, 1 – CD Only, 2 – Tape Only.


Универсальный контроллер CD-ROM-магнитофон с дистанционным управлением


Универсальный контроллер CD-ROM-магнитофон с дистанционным управлением

Александр Торрес

Харьков.

В последние годы многие проявляют большой интерес к контроллерам CD-ROM. Компакт-диск стал наиболее распространенным и дешевым источником музыки. Появившись сначала в переносных  и стационарных аудио-проигрывателях,  музыкальных центрах, привод CD-ROM нашел широчайшее применение в компьютерной технике как носитель цифровой информации. Постоянно появляются новые модели  CD приводов, увеличивается их скорость, а старые модели  выводятся из эксплуатации. Вместе с тем,  любой компьютерный привод кроме цифровых данных, пригоден также для воспроизведения музыкальных компакт-дисков. Многие приводы имеют специальные кнопки, позволяющие прослушивать аудиодиски без всякого программного обеспечения, а также использовать их в автономном режиме, т.е. без компьютера. Для этого надо всего-навсего подать на привод питание (+5 и +12 вольт), вставить диск и нажать кнопку “Play”. Однако, старые модели обычно выпускались без специальных «аудио кнопок», да и новые их имеют не все. Кроме того, такой «CD-проигрыватель» получается уж слишком упрощенным, поэтому многие конструкторы разрабатывали и продолжают разрабатывать специальные контроллеры, превращающие компьютерный CD-привод в более-менее настоящий аудио-проигрыватель.

В различных конференциях Фидо и Интернет, постоянно появляются вопросы типа: «что надо подать на разъем привода, чтобы он начал играть». На это можно сразу ответить коротко – просто замкнуть определенные контакты не выйдет!  CD-привод это сложное устройство, и для его управления нужно в него посылать специальные команды, считывать из него сигналы состояния и т.д., что возможно только при использовании микропроцессора. Приводы CD-ROM исторически выпускались с различными интерфейсами – Sony, Mitsumi, Panasonic, IDE, SCSI. Первые три уже практически вышли из употребления, последний применяется в наиболее дорогих устройствах. Поэтому наиболее актуальным является управление приводом с интерфейсом IDE, хотя хронологически, первым опубликованным контроллером был контроллер с интерфейсом Panasonic.
Но приводов с  интерфейсом Panasonic не так уж и много, плюс его автор не сделал свободно доступной «прошивку», т.е. программу управления микропроцессора контроллера. Далее в различных источниках появлялись различные схемы и прошивки для контроллеров IDE, известно также про некоторые разработки, но появившиеся в печати или сетях (автор тоже этим грешен – первый контроллер на PIC16C74 я сделал в 96 году), как правило на микропроцессорах MCS-51, PIC или Z80. Наиболее известным является контроллер [1] Романа Иващенко (digitalr@chat.ru, 2.4613/204.21) – построенный на дешевом  и доступном Z80,  со свободно распространяющейся прошивкой.

Предлагаемая разработка никоим образом не является конкурентом уже опубликованных конструкций, однако во многом от них отличается. Она представляет собой гибрид старой конструкции на PIC16C74, и нового спецконтроллера, разрабатывавшегося несколько для иных целей, и построенная на микроконтроллере серии AVR – AT90S8515 фирмы Atmel. Чем она отличается от уже имеющихся конструкций? Во первых гораздо меньшим количеством деталей – простейший вариант можно собрать за вечер без печатной платы, просто на макетке!

Во вторых – большими возможностями и универсальностью. Кроме управления CD-ROM, она может управлять также лентопротяжным механизмом магнитофона, тем самым появляется возможность построения аудио комплекса на одном контроллере. В третьих – наличие в микропроцессоре AT90S8515 встроенной энергонезависимой памяти данных (EEPROM) позволяет держать в ней настраиваемые пользователем параметры. В четвертых – возможность использования дистанционного управления. В пятых… Впрочем, обо всем по порядку.

При управлении CD-ROM предусмотрены следующие команды:  Play, Stop, Pause, переход на следующий трек, переход на предыдущий трек, переход на 10 сек. вперед, переход на 10 сек. назад, открытие/закрытие трея, синхронный пуск на запись магнитофона, и следующие режимы: непрерывное воспроизведение диска, останов после проигрывания одного трека, произвольное воспроизведение, обзор диска.


Все режимы работы отображаются на индикаторе, вместе с номером текущего трека, числом треков (в режиме СТОП),  временем звучания. Индикация времени звучания также переключается, возможно отображение времени от начала трека, от начала диска, до конца трека и до конца диска. Управление магнитофоном и его индикация будут рассмотрены ниже.



«Сердцем» контроллера является базовый блок (рис.1), состоящий из микропроцессора, ЖКИ индикатора, IDE-разъема и буферной микросхемы (561ЛН2). В таком виде, блок пригоден для управления ИЛИ CD-ROM (режим CD) ИЛИ магнитофоном (режим Tape), единственное отличие заключается в подключении ЖКИ индикатора – при работе с CD-ROM сигнал DI берется с вывода PB5 (как показано на рис.1), а при работе с магнитофоном используется вывод PB6 (сигнал DI’). В качестве индикаторов, применены “телефонные” ЖКИ, обычно являющиеся отходами при производстве АОН-ов.

Для одновременного управления И CD-ROM И магнитофоном (режим CD&Tape), необходимо  еще использовать 8-разрядный регистр (рис.2) и второй ЖКИ, подключаемый к разъему J3.



Рассмотрим поподробнее схему базового блока (рис.1). К управляющему микроконтроллеру U1 подключен IDE-разъем J1.  Основной ЖКИ индикатор G1 подключен через  делители напряжения к соответствующим выходам процессора. Питание на основной индикатор подается через ограничитель напряжения и от батарейки. В выключенном состоянии индикатор работает как часы, для установки которых служат кнопки S1 и S2. Одна служит для выбора устанавливаемого параметра, вторая – для установки его значения. Разъем J3 предназначен для подключения второго индикатора (магнитофона). В случае использования двух индикаторов (при управлении CD&Tape) батарейка и кнопки устанавливаются только для одного из них – зачем вам две пары часов в одном устройстве? Сигнал НК второго индикатора замкнут на общий.

Разъем J4 служит для программирования процессора прямо в схеме. Через разъем J2 подаются сигналы с кнопок непосредственного управления (НУ) или с блока дистанционного управления (ДУ).


В последнем случае, кнопки НУ подключаются к самому блоку ДУ (рис 3.). Микросхема U2 служит преобразователем высокого напряжения с ДУ и формирования строба. Так необходимо для блока ДУ на базе микросхемы 1506ХЛ2 с пультом на 1506ХЛ1, применяемых в телевизорах. Грамотные конструкторы могут переделать данный узел в случае применения других блоков ДУ. Главное – обеспечить соответствующие сигналы на входа процессора: инверсный двоичный код клавиши на входах PD4-PD7 (сигналы IK0-IK3) и отрицательный строб на входе PD2 (сигнал IKR). Начинаться строб должен после установки кода, длительность – больше нескольких микросекунд.

Таким образом, для управления используется до 16 кнопок (команд), причем какая кнопка соответствует какой команде – определяется пользователем. Первая половина команд (коды 0-7) используется для управления CD, вторая (коды 8-15) – для управления магнитофоном.



Выводы PB0-PB2 процессора используются для задания адреса IDE-порта, и для ввода трех сигналов – джампера “setup”, датчика закрытия кассетоприемника, и третий пока зарезервирован.

На рисунке 3 показана одна из возможных схем дистанционного управления на базе телевизионных микросхем 1506ХЛ2 (приемник) и 1506ХЛ1 (передатчик). Схема самого инфракрасного приемника и передатчика не показаны, поскольку они стандартны. 1506ХЛ2 в приемнике включена по типовой схеме, за исключением кварцевого резонатора – он выбран на частоту, отличающуюся от обычно применяемой в телевизоре 4 Мгц.  Передатчик также требует доработки – установки микропереключателя «телевизор-аудиокомплекс», замыкающий резистор, идущий с 4-й ножки 1506ХЛ1. Если же вы не используете управление отечественным телевизором, то можно использовать пульт без доработки, установив в приемник кварц 4Мгц. Для управления используются кнопки переключения каналов и выключения питания. Поскольку редко пульт содержит 16 кнопок переключения каналов, можно запрограммировать имеющиеся на выполнение самых часто используемых функций с пульта ДУ, а полный набор кнопок иметь на передней панели аппарата.


Кнопки НУ и кнопка выключения питания подключаются к входам микросхемы 1506ХЛ2. Возможно установка переключателя CD-Tape, переключающего 8 кнопок с кодов 0-7 на коды 8-15. Если пульт ДУ используется только для аудио комплекса, можно использовать все 16 кнопок, перекоммутировав их на плате навесным монтажом, в принципе, при этом можно обойтись без кнопок НУ вообще, для упрощения схемы. Для питания дешифратора и приемника ДУ необходимо напряжение 13-18в, хотя отдельные экземпляры работают и при 12в. Кнопка S1 служит для  выключения питания, включение производится нажатием на любую рабочую кнопку (это относится как к кнопкам пульта ДУ, так и к кнопкам НУ). При этом изменяется состояние вывода М микросхемы 1506ХЛ2, которое можно использовать для управления питания всей остальной схемы. Включенному состоянию соответствует высокое напряжение на этом выводе. Более подробно описание 1506ХЛ1 и ХЛ2 приведено в [2].

При переключении каналов, микросхема 1506ХЛ2 блокирует звук телевизора, на время нажатия кнопки. Это свойство используется для генерации строба микропроцессору – широтно-импульсный сигнал управления звуком, подается на интегратор, и после преобразования уровня – на вход микропроцессора.

При использовании базового блока без ДУ, можно использовать набор кнопок с диодно-транзисторным (или любым другим) шифратором.  Вместо ДУ на базе серии 1506 с кодом RC4, можно использовать еще один микроконтроллер, принимающий коды ДУ в коде RC5, и использовать импортные пульты ДУ. Для этого достаточно дешевых контроллеров младших серий PIC, AVR или MCS-51.

При подаче питания с установленным джампером “setup”, контроллер входит в режим установки параметров. Для отображения используются оба ЖКИ-индикатора, поэтому если подключен только один, то неважно какой именно.

Управляющие коды кнопок 0-7 также тождественны кодам 8-15, и используются следующим образом: