С недавних пор, привода CD-ROM стали
непременным атрибутом современного компьютера.
Однако в последнее время, в связи с бурным
возрастанием скоростей обмена информацией и
удешевлением
высокоскоростных моделей, все большее и большее
количество "пожилых и неторопливых"
отправляется в свое последнее путешествие - на
полку, глотать пыль (а в худшем случае - на
запчасти). Сейчас цена на 2-х - 4-х скоростные
модели колеблется в пределах 40-75 гривен
(модели с кнопками управления стоят несколько
дороже). И хотя качество звучания, обеспечиваемое
CD-ROM приводами значительно хуже, чем в
стационарных проигрывателях компакт дисков, но
все же является более высоким в сравнении с
кассетными магнитофонами. Основным
препятствием, мешающим использованию CD-ROM
приводов в качестве автономных проигрывателей
компакт дисков, является отсутствие каких-либо
органов управления проигрыванием диска. И хотя
существуют
модели имеющие клавиши управления, но они, к
сожалению, не обеспечивают никаких сервисных
функций. Есть два варианта решения этой проблемы:
можно найти справочные данные на управляющий
процессор привода - возможно он позволяет
подключить управляющие клавиши, или же можно
управлять приводом так, как это делает компьютер
- через интерфейс привода. Сразу должен
оговориться: первый вариант - это практически
безнадежное дело, тогда как второй, хотя и чреват
дополнительными материальными и временными
затратами - беспроигрышен. На сегодняшний день
существует несколько схем такого рода. Две из них
были опубликованы в журнале
"Радиолюбитель", еще одна рекламировалась в
одной из эхоконференций сети FIDO. К сожалению все
эти схемы имеют
свои недостатки, а именно: необходимость наличия
на лицевой панели привода клавиш управления
("Радиолюбитель №), отсутствие прошивки для
микроконтроллера и не IDE интерфейс
("Радиолюбитель №1/98) и, опять же, отсутствие
прошивки для третьей схемы, что, естественно,
затрудняет их повторение. Учитывая все сказанное
выше и было принято решение об разработке
недорогого контроллера CD-ROM привода, в той или
иной мере свободного от указанных недостатков.
Итак кратко о том что это за устройство и для чего
оно нужно. Данная схема
представляет собой контроллер для управления
CD-ROM приводом с IDE интерфейсом и предназначена для
реализации возможности проигрывания
музыкальных компакт дисков. Кроме того,
контроллер может использоваться для проверки
работоспособности привода (данная версия
прошивки не поддерживает эту возможность). В
качестве управляющего процессора использован
процессор Z80 (DD3). Причин обусловивших такой выбор
две: во-первых при разработке чего-либо чаще
всего приходится довольствоваться тем что есть
под рукой, и, во-вторых, этот процессор, как и
устройства на его основе (АОНы и ZX-Spectrum которые
пылятся полуразобранные на полках у многих),
достаточно широко распространен. Я, например,
использовал старую плату АОН, благо большинство
соединений там уже разведено. На элементах 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)
Большая просьба ко всем повторившим эту
конструкцию! Сообщите пожалуйста модель и
фирму-изготовителя привода, а также ваши
результаты не зависимо от того заработала ли
схема или нет. Я не могу гарантировать работу
схемы на всех приводах, но, по возможности, буду
стараться исправлять проблемы, в случае если
какая-то модель привода откажется работать.
Также буду благодарен за предложения по поводу
улучшения сервиса. Связаться со мной вы можете по
следующим адресам:
Internet: digitalr@chat.ru
Digitalres@fcmail.com
FIDONet: Ivaschenko Roman 2.4613/204.21
Последнюю версию прошивки всегда можно скачать с
моей странички:
http://www.chat.ru/~digitalr
(C)1999 Ivaschenko Roman