Портал для радиолюбителей
   Проигрыватель компакт-дисков на базе CD-ROM
    Главная -> Статьи -> Устройства на микроконтроллерах -> Проигрыватель компакт-дисков на базе CD-ROM


<< Назад в раздел   Распечатать Дата добавления: 2008-02-17 | Просмотров: 18805

С недавних пор, привода CD-ROM стали непременным атрибутом современного компьютера. Однако в последнее время, в связи с бурным возрастанием скоростей обмена информацией и удешевлением высокоскоростных моделей, все большее и большее количество "пожилых и неторопливых" отправляется в свое последнее путешествие - на полку, глотать пыль ( а в худшем случае - на запчасти ). Сейчас цена на 2-х - 4-х скоростные модели колеблется в пределах 40-75 гривен (модели с кнопками управления стоят несколько дороже). И хотя качество звучания, обеспечиваемое CD-ROM приводами значительно хуже, чем в стационарных проигрывателях компакт дисков, но все же является более высоким в сравнении с кассетными магнитофонами.

Основным препятствием, мешающим использованию CD-ROM приводов в качестве автономных проигрывателей компакт дисков, является отсутствие каких-либо органов управления проигрыванием диска. И хотя существуют модели имеющие клавиши управления, но они, к сожалению, не обеспечивают никаких сервисных функций. Есть два варианта решения этой проблемы: можно найти справочные данные на управляющий процессор привода - возможно он позволяет подключить управляющие клавиши, или же можно управлять приводом так, как это делает компьютер - через интерфейс привода. Сразу должен оговориться: первый вариант - это практически безнадежное дело, тогда как второй, хотя и чреват дополнительными материальными и временными затратами - беспроигрышен.


На сегодняшний день существует несколько схем такого рода. Две из них были опубликованы в журнале "Радиолюбитель", еще одна рекламировалась в одной из эхоконференций сети FIDO. К сожалению все эти схемы имеют свои недостатки, а именно: необходимость наличия на лицевой панели привода клавиш управления ("Радиолюбитель №), отсутствие прошивки для микроконтроллера и не IDE интерфейс ("Радиолюбитель №1/98) и, опять же, отсутствие прошивки для третьей схемы, что, естественно, затрудняет их повторение. Учитывая все сказанное выше и было принято решение об разработке недорогого контроллера CD-ROM привода, в той или иной мере свободного от указанных недостатков.

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

В качестве управляющего процессора использован процессор Z80 (DD3). Причин обусловивших такой выбор две: во-первых при разработке чего-либо чаще всего приходится довольствоваться тем что есть под рукой, и, во-вторых, этот процессор, как и устройства на его основе (АОНы и ZX- Spectrum которые пылятся полуразобранные на полках у многих), достаточно широко распространен. Я, например, использовал старую плату АОН, благо большинство соединений там уже разведено.

Схема проигрывателя компакт-дисков (102 Кб)

На элементах DD1.1-DD1.3 микросхемы DD1 (К1533ЛН1) собран задающий кварцевый генератор с выхода которого тактовая последовательность с частотой 4 МГц поступает на тактовый вход (ножка 6) процессора. На элементах DD1.4-DD1.6 выполнен генератор импульсов прерываний. Снимаемые с его выхода короткие импульсы отрицательной полярности с частотой около 400 Гц подаются на вход маскируемого прерывания (ножка 16) процессора.

Обьем ОЗУ и ПЗУ (микросхемы DD7 (К573РУ10) и DD5 (2764)) составляет 2КБ и 8КБ соответственно (максимальный обьем - 32КБ и 32КБ), что дает возможность использовать практически любые микросхемы памяти. Карта памяти устройства выглядит следующим образом:

Адрес          Тип памяти

0000H-1FFFH    ПЗУ
2000H-27FFH    ОЗУ.
2800H-FFFFH    Зарезервировано под расширение ОЗУ и ПЗУ.

На микросхеме DD2 (К1533ИД7) выполнен дешифратор адресов внешних устройств.

Для сокращения числя корпусов микросхем, а, следовательно, удешевления устройства, выбран динамический метод индикации. Образ символа защелкивается в регистре DD8 К1533ИР23 (ему соответствуе адрес на запись 7FH), а код соответствующий номеру подсвечиваемого разряда - в регистре DD9 К1533ТМ9 (адрес на запись 3FH). Код номера разряда дешифруется микросхемой DD4 К555ИД10.

На микросхеме DD6 К1533КП11 выполнен порт клавиатуры. Адрес клавиатурного порта - 3ЕH (чтение). Клавиатура представляет собой матрицу организацией 4х4 нормально разомкнутых кнопок. Столбцы клавиатуры подключаются ко входам порта клавиатуры, а строки - к выходам дешифратора сканирования (DD4). Количество кнопок может быть легко увеличено до 36, для этого достаточно допаять матрицу клавиатуры по аналогии с уже имеющейся, используя оставшиеся выводы дешифратора DD4, за исключением вывода R9 (ножка 11) которая участвует в формирование сигнала сброса длq привода CDROM.

Для согласования восьмиразрядной шины данных микропроцессора с шестнадцатиразрядной шиной данных привода CD-ROM служит узел включающий в себя три микросхемы : DD10 (К1533АП6) и DD11-DD12 (К1533ИР23). Шинный формирователь DD10 обеспечивает развязку шины данных микропроцессора и младшей половины шины данных привода, а регистры DD11-DD12 - фиксацию данных поступающих на старшую половину шины данных привода при чтении или записи. Младшей половине соответствует базовый адрес чтения/записи F0H, а старшей - BFH. (Примечание : так как привод CD-ROM имеет 8 регистров через которые осуществляется обмен данными и управ- ление, то, соответственно, ему, как внешнему устройству, соответствуют 8 адресов на ввод и вывод, в данном случае - F0H-F7H). Таким образом, для записи данных в CD-ROM необходимо сначала записать старший байт по адресу BFH, а затем записать младший байт по требуемому адресу из диапазона F0H-F7H. Для считывания же данных необходимо сначала считать младший байт (адрес - F0H-F7H), а затем считать старший байт из порта с адресом BFH.

Теоретически, правильно собранное устройство в наладке не нуждается. Однако на практике возможно потребуется подкорректировать значение частоты генератора импульсов прерываний - она должна составлять 400 Гц

Микросхемы серии К1533 заменяются их аналогами из серии К555. Процессор Z80 может быть заменен на советский аналог К1858ВМ1. Мультиплексор К1533КП11 (DD6) может быть заменен на шинный формирователь К1533АП5, К1533АП6 или даже на четыре элемента микросхемы К555ЛП8. Вместо регистра DD8 К1533ИР23 может быть установлен регистр К1533ИР27, при этом вывод 1 микросхемы необходимо подключить к лог.1 или на вывод 26 (цепь сброса) процессора. Вместо регистра DD9 К1533ТМ9 можно использовать либо К1533ИР27 (вывод 1 подключается аналогично предидущему варианту), либо К1533ИР23.

Приведенная прошивка ПЗУ контроллера не обеспечивает никаких сервисных функций. Фактически, ее основное назначение показать, что схема контроллера работоспособна. Это ни в коем случае не значит, что не будет появляться новых версий прошивки. Возможно они появятся уже к lnlemrs выхода статьи.

Итак, данная прошивка обеспечивает следующие функции:

    1.Воспроизведение аудио дисков с индикацией номера текущей дорожки
      и времени проигрывания (клавиша "2");
    2.Переход на предыдущую дорожку (клавиша "1");
    3.Переход на следующую дорожку (клавиша "4");
    4.Останов проигрывания (клавиша "3");
    5.Пауза/возобновление проигрывания (клавиша "6")
    6.Выброс диска (клавиша "7").
Вставленный диск автоматически распознается, и выбрасывается, в случае если он не содержит ни одной аудио дорожки.

Приведенная прошивка была успешно оттестирована на следующих моделях CD-ROM приводов:
Mitsumi 4x (model FX400E) Mitsumi 8x (model FX810T4)
Samsung 24x (model SCR2430, SCR2431)

Прошивка ПЗУ
Несколько ответов на наиболее часто задаваемые вопросы

Печатна плата - архивный файл (pcb-cd.zip - 77 кб.)
Рисунок печатной платы (1)
Рисунок печатной платы (2)
Расположение элементов

Большая просьба ко всем повторившим эту конструкцию! Сообщите пожалуйста модель и фирму-изготовителя привода, а также ваши результаты не зависимо от того заработала ли схема или нет. Я не могу гарантировать работу схемы на всех приводах, но, по возможности, буду стараться исправлять проблемы, в случае если какая- то модель привода откажется работать. Также буду благодарен за предложения по поводу улучшения сервиса.

Связаться со мной вы можете по следующим адресам:
Internet: [email protected]
[email protected]
FIDONet: Ivaschenko Roman 2.4613/204.21


Добавил:  Павел (Admin)  
Автор:  Роман Иващенко 

Вас может заинтересовать:

  1. "Что позволено Юпитеру", или Почему одни микроконтроллеры надежнее других
  2. Сопряжение с компьютером цифрового мультиметра серии 830
  3. Универсальный USB программатор
  4. Контроллер двухцветного светового шнура Flexilight
  5. Станция для монтажа и демонтажа BGA и других SMD радио компонентов


    © PavKo, 2007-2018   Обратная связь   Ссылки   Яндекс.Метрика