edw 2003 03 s16

background image

16

Elektronika dla Wszystkich

Do czego to służy?

U wielu z nas znajdują się stare, ale spraw-
ne, starsze modele popularnych napędów
CD-ROM, które można wykorzystać do bu-
dowy własnego odtwarzacza płyt CD.
Większość napędów już po zastosowaniu
zewnętrznego zasilacza gotowych jest do
użytku jako odtwarzacz CD. Mowa tu o na-
pędach, które na przedniej ściance mają do-
datkowy przycisk „start/następny utwór”.
Ale istnieją napędy, które mają tylko jeden
przycisk „Eject” i przez dołączenie jedynie
zewnętrznego zasilacza nie da się ich wyko-
rzystać. Rozwiązaniem tego problemu może
być dodatkowy sterownik, który poprzez
komunikację z napędem przez złącze IDE
może sterować potrzebnymi funkcjami do
prawidłowego odtwarzania płyt CD. Dzięki
zastosowaniu, dodatkowego sterownika
uzyskano bardzo wiele możliwości sterowa-

nia napędem zarówno z dwoma przyciska-
mi, jak i z jednym. Możliwe stało się wy-
świetlenie informacji o czasie trwania utwo-
ru, numerze odtwarzanej ścieżki itd. Prosto-
ta sterownika przyczyniła się do zmniejsze-
nia związanych z nim kosztów do mini-
mum, z których najdroższymi są mikrokon-
troler oraz wyświetlacz LCD 2*16 znaków.
Jako układ komunikujący się z napędem za-
stosowany został mikrokontroler AVR typu
AT90S8515, którego wielką zaletą jest moż-
liwość programowania w zamontowanym
już układzie docelowym. Wiele starszych
modeli napędów CD-ROM różniło się mię-
dzy sobą listą wykorzystywanych poleceń.
Aby sterownik pracował z większością na-
pędów, starałem się nie korzystać z poleceń
oznaczonych jako opcjonalne.

Przedstawiony sterownik realizuje nastę-

pujące funkcje odtwarzacza:

- Sterowanie odtwarzaczem możliwe jest na-
stępującymi przyciskami: poprzedni utwór,
start, pauza, stop, następny utwór, przewija-
nie do tyłu, przewijanie do przodu, czas oraz
tryb odtwarzania.
- Istnieje możliwość sterowania odtwarza-
czem za pośrednictwem pilota z kodem RC5.
- Zastosowanie alfanumerycznego wyświe-
tlacza LCD umożliwiło prezentację na nim
numeru odtwarzanej ścieżki, jej czasu trwa-
nia, trybu odtwarzania oraz informacji o sta-
nie odtwarzacza.
- Wyświetlany czas trwania utworu może być
pokazywany w czterech trybach: jako czas
od przodu trwania utworu, czas od tyłu trwa-
nia utworu oraz jako czas od przodu i czas od
tyłu trwania całej płyty CD.

OO

OO

dd

dd

tt

tt

w

w

w

w

aa

aa

rr

rr

zz

zz

aa

aa

cc

cc

zz

zz

CC

CC

DD

DD

++

++

++

Rys. 1 Schemat ideowy

2

2

6

6

6

6

0

0

background image

- Odtwarzanie utworów możliwe jest
w trzech następujących trybach: odtwarzanie
jednorazowe całej płyty CD, odtwarzanie
w kółko płyty CD oraz odtwarzanie losowe
utworów CD.

Poniższy kontroler przyda się tym wszyst-

kim, którzy nie posiadają w domu odtwarza-
cza płyt CD, a chcą wykorzystać zakupiony
za niewielką sumę pieniędzy komputerowy
napęd CD-ROM. Kontroler powstał w na-
wiązaniu do zamieszczonego w EdW 9/2001
na stronie 30 artykułu „Co zrobić ze starym
napędem CD-ROM”, w którym zaprezento-
wany był wspomniany prosty sposób wyko-
rzystania napędów poprzez zastosowanie ze-
wnętrznego źródła zasilającego. Sygnał
z analogowego wyjścia napędu CD-ROM
jest dobrej jakości, ale jeżeli zależy nam na
niskich szumach wyjściowego sygnału, to
można wykorzystać cyfrowe wyjście, które-
go sygnał można zdekodować specjalnym
przetwornikiem np. przedstawionym w Elek-
tronice Praktycznej 2/2000 i 3/2000. Ponie-
waż temat sposobu komunikacji z napędem
CD-ROM jest rozległy, już na początku chcę
powiedzieć, że nie zostanie on dokładnie
omówiony. Zajęłoby to wiele miejsca, a prze-
cież artykuł ma dotyczyć głównego bohatera
- jakim jest kontroler sterujący pracą napędu
CD-ROM poprzez złącze IDE. Jeżeli będzie
duże zainteresowanie sposobem komunikacji
przez złącze IDE, to możliwe będzie przygo-
towanie osobnego artykułu przedstawiające-
go główne aspekty tejże komunikacji. Wów-
czas po dokładne dane będzie trzeba sięgnąć
do odpowiednich specyfikacji interfejsu IDE
lub jego odchyleń jak ATAPI, który używa
IDE jako fizycznego interfejsu, ale korzysta
z poleceń SCSI. ATAPI jest najczęściej uży-
wanym interfejsem czytników CD-ROM,
który pokrótce i w wielkim uproszczeniu
przedstawiam w dalszej części artykułu.

Jak to działa?

Schemat ideowy kontrolera znajduje się na
rysunku 1. Całość została zbudowana w bar-
dzo prosty sposób i z niewielką liczbą ukła-
dów scalonych. Do przesyłu danych między
mikrokontrolerem a napędem wykorzystano
dwa porty PA oraz PC. Dane z portu PA są
dodatkowo zatrzaskiwane w U3 wysokim
impulsem na wejściu C. Dane przesłane do
U3 służą do multipleksowania klawiatury
oraz do wyboru odpowiednich rejestrów na-
pędu CD-ROM. Zapisem oraz odczytem da-
nych z napędu sterują linie DIOW/ oraz
DIOR/. Wyjście INTRQ sygnalizuje zgłosze-
nie przerwania od napędu CD-ROM. Wyj-
ścia portu PB oprócz sterowania wyświetla-
czem odczytują stan klawiatury, która jest
multipleksowana, jak wspomniałem, poprzez
zatrzask U3. Linie portu PD0, PD1 oraz PD3
sterują przepływem danych przy komunika-
cji z napędem, natomiast linie PD6 oraz PD7
tworzą magistralę I

2

C, która będzie pomocna

przy rozszerzeniu kontrolera o np. dodatko-
wy cyfrowo sterowany przedwzmacniacz.
Odbiornik U7 odbiera nadawany z pilota kod
RC5, który po odfiltrowaniu nośnej podawa-
ny jest na wejście PD2. Układ U6 jest specja-
lizowanym układem, dbającym o prawidło-
wy przebieg zerowania napędu CD-ROM
oraz mikrokontrolera U1. Napęd CD-ROM
do swojej pracy potrzebuje dwóch stabilizo-
wanych napięć o wartościach +5V i +12V.
Zasilacz kontrolera i napędu CD-ROM został
zbudowany z TR1, B1, stabilizatorów i kon-
densatorów filtrujących otrzymane napięcia.

Program zapisany w U1 został napisany

w rewelacyjnym BASCOM AVR, przy czym
nie będę go tutaj przedstawiał ze względu na
wielkość, jaką on zajmuje (7,5kB). Program
jest trochę rozbudowany, a przedstawienie
tutaj którejś procedury zajęłoby sporo miej-
sca, gdyż wiele z nich jest powiązanych ze
sobą. Myślę, że przedstawianie dalej ogól-
nych informacji o sposobie komunikowania
się z napędem CD-ROM pozwoli na łatwiej-
sze samodzielne przeanalizowanie kodu
źródłowego programu. Za pomocą wspo-
mnianych linii CSx oraz DAx można wybrać
określone rejestry, jak np. rejestr statusu,
który przedstawia informacje o stanie napę-
du, rejestr danych służący do wprowadzania
i wysyłania danych, rejestr błędów, rejestr
cech czy rejestr wyboru dysku. Na przykład
zapis do określonego rejestru napędu będzie
polegał na odpowiednim ustawieniu linii CS
i DA, wpisaniu 16-bitowych danych do wy-
słania na linie danych D0 – D15, które zosta-
ną wysłane po ujemnym impulsie sygnału
DIOW/. Odczyt danych będzie podobny, bo
zmiana będzie dotyczyła jedynie sygnału na

wejściu sterującym DIOR/. Protokół trans-
portu ATAPI składa się z poleceń oraz pakie-
tów poleceń. Każde wysłanie pakietu musi
być poprzedzone wysłaniem polecenia
„ATAPI PACKET” o kodzie A0h. Wysłanie
polecenia ATAPI IDENTIFY DEVICE
(A1h) zwraca informacje o napędzie, jego
producencie, wersji oprogramowania firmo-
wego czy w jakiej długości mają być przesy-
łane pakiety poleceń, które mogą być długo-
ści 12 lub 16 bajtów. Polecenie to w opisywa-
nym układzie zostało wykorzystane do okre-
ślenia długości pakietu danych oraz do od-
czytu nazwy modelu CD-ROM. Przy wysy-
łaniu polecenia należy podać długość danych
do odbioru, wpisywanych do 16-bitowego
rejestru licznika bajtów. Dane o liczbie ście-
żek oraz miejsc początków ścieżek włożonej
płyty CD odczytywane są z tzw. tablicy za-
wartości TOC. Odczytane początki utworów
pobierane są w formacie MSF. Format MSF
polega na tym, że adres sektora podany jest
w minutach, sekundach oraz ramkach, mają-
cych długość 1/75 sekundy. Czas oraz numer
odtwarzanej ścieżki pobierany jest z podka-
nału danych (kod 42h), z którego można po-
brać czas relatywny odtwarzanej ścieżki oraz
absolutny odtwarzanej płyty CD. Na podsta-
wie tych danych można obliczyć różne for-
maty czasów przedstawiających czas odtwa-
rzanej ścieżki. Przy analizie programu bar-
dzo pomocna będzie specyfikacja interfejsu
ATAPI, w której dokładnie opisany jest ten
standard. Przyciski realizujące przewijanie
w tył i do przodu oraz następny utwór i po-
przedni zostały zrealizowane programowo.

17

Elektronika dla Wszystkich

Rys. 2 i 3 Schematy montażowe

background image

Zawarte w programie komunikaty w formie
rozkazów były używane przy testowaniu po-
prawności transmisji i działania niektórych
poleceń, dlatego też nie kasowałem ich, gdyż
mogą być pomocne przy zmianach oprogra-
mowania i jego późniejszym testowaniu.

Montaż i uruchomienie

Cały układ kontrolera należy zmontować na
dwóch płytkach drukowanych, z których
główna z mikrokontrolerem jest dwustronna.
Obie płytki przedstawione zostały na rysun-
ku 2
oraz rysunku 3. Montaż drugiej płytki
należy rozpocząć od wlutowania dwóch zwo-
rek, przechodząc dalej do elementów najwięk-
szych, przy czym odbiornik podczerwieni po-
winien być zamontowany na leżąco. Przy
montażu płytki sterownika należy zadbać
o poprawność montażu, gdyż późniejsze wy-
lutowanie elementów może być kłopotliwe
bez odpowiednich narzędzi, a nawet może do-
prowadzić do uszkodzenia płytki. Na płytce
kontrolera nie należy montować stabilizato-
rów, ponieważ zostaną one przykręcone do ra-
diatora, którym może być przykładowo obu-
dowa napędu CD-ROM, choć można zastoso-
wać osobny radiator o odpowiedniej wielko-
ści. Dla lepszego odprowadzania ciepła, stabi-
lizatory należy posmarować specjalną pastą
zwiększającą przewodność cieplną. Stabiliza-
tory trzeba połączyć z płytką przewodami
o odpowiedniej grubości, gdyż szczytowy po-
bór prądu może sięgać nawet 1,5A. W ukła-
dzie zastosowane zostały stabilizatory o więk-
szej wydajności prądowej niż zwykłe. Widać
to po dodatkowym oznaczeniu S w symbolu
stabilizatora. Do podłączenia napędu z kontro-
lerem będzie potrzebna 40-żyłowa taśma oraz
odpowiedni przewód zakończony wtyczką pa-
sującą do gniazda zasilającego napędu CD-
ROM. Ja takie gniazdo wziąłem ze starego ze-
psutego zasilacza komputerowego, ale myślę,
że jest możliwość zakupu takiego gniazda
w sklepie z częściami elektronicznymi. Aby
CD-ROM poprawnie komunikował się z kon-
trolerem, musi być ustawiony zworką na
„MASTER”. Bez takiego ustawienia CD-
ROM nie będzie pracował poprawnie. Po po-
prawnym zmontowaniu i podłączeniu całości,
kontroler powinien od razu poprawnie praco-
wać, zamieniając napęd CD-ROM w funkcjo-
nalny odtwarzacz płyt CD. Potencjometrem
P1 należy ustawić kontrast zastosowanego
wyświetlacza LCD 2*16 znaków. Jeżeli jest
on wyposażony w podświetlenie, można je
wykorzystać poprzez dolutowanie od tylniej
części wyświetlacza rezystora ograniczające-
go prąd diod, którego wartość w urządzeniu
modelowym wynosiła 100

Ω (od wartości tego

rezystora będzie zależała jasność podświetle-
nia). Dodatkowo należy zewrzeć odpowiednią
zworkę, różną dla różnych typów wyświetla-
czy. Samodzielnie należy sprawdzić mierni-
kiem, którą zworkę zewrzeć. Całość włącznie
z napędem CD-ROM można umieścić w obu-

dowie metalowej lub plastikowej z serii Z-xx.
Na rysunku we wkładce przedstawiony zo-
stał wygląd przykładowej płyty czołowej,
którą po przeniesieniu na papier samoprzylep-
ny należy nakleić na przód obudowy. Rysun-
kiem ściany przedniej obudowy można się po-
służyć do wyznaczenia otworów, które należy
wyciąć i wywiercić. Na przedniej płycie moż-
na umieścić wyłącznik zasilania, tak jak to
wykonano w egzemplarzu modelowym. Wy-
cięty otwór na odbiornik podczerwieni przed
przyklejeniem rysunku płyty czołowej można
zakryć np. kawałkiem naświetlonego filmu
lub odpowiednio wyciętym kawałkiem czer-
wonego plexi. Z umocowanie napędu CD-
ROM w obudowie raczej nie powinno być
problemu, gdyż posiada on wiele przeznaczo-
nych do tego otworów. Na tylnej ściance trze-
ba wyciąć otwór pod gniazdo bezpiecznikowe
oraz dwa na gniazda wyjścia sygnału, które
mogą być typu chinch. Należy je podłączyć do
gniazda audio z tyłu obudowy napędu, które
zazwyczaj służy do podłączenia karty dźwię-
kowej. Jak było wspomniane, można wyko-
rzystać wyjście cyfrowe, ale będzie się to wią-
zało z dodatkowym kosztem jakim jest prze-
twornik. Po wykonaniu całości i włączeniu na
wyświetlaczu powinna pojawić się nazwa
użytego napędu, oczywiście jeżeli producent
umieścił go w pamięci napędu. Jeżeli wystę-
puje komunikat „brak komunikacji”, to przy-
czyną może być złe ustawienie zworki napędu
CD-ROM, która jak wspominałem powinna
być ustawiana na „MASTER”. Jeżeli komuni-
kat nazwy napędu pojawił się, następnym po-
winien być napis „NO DISK”, jeżeli w napę-
dzie nie ma płyty CD. Po umieszczeniu płyty
w napędzie, przez chwilę pojawi się napis in-
formujący o liczbie ścieżek zawartych na CD
oraz całościowym czasie ich trwania. Po tych
komunikatach odtwarzacz jest gotowy do pra-
cy, którą można rozpocząć naciskając przy-
cisk „Play”. Ponieważ każdy napęd ma przy-
cisk „Eject”, nie było potrzebne umieszczać
takiego przycisku na płytce z przyciskami,
gdyż nie miałoby to większego przecież sen-
su. Po sprawdzeniu wszystkich przycisków
sterujących zostało do sprawdzenia jedynie
sterowanie pilotem z kodem RC5. Funkcje od-
twarzacza zostały przypisane jedynie do przy-
cisków pilota od 1 do 9, których znaczenie jest
następujące:
- przycisk 1: Play
- przycisk 2: Pause
- przycisk 3: Stop
- przycisk 4: Utwór poprzedni
- przycisk 5: Time (tryb pokazywania czasu
trwania płyty i ścieżki)
- przycisk 6: Utwór następny
- przycisk 7: Przewijanie do tyłu
- przycisk 8: Mode (tryb odtwarzania ścieżek)
- przycisk 9: Przewijanie do przodu

Działanie przycisku „Stop” jest podwójne,

gdyż np. przy odtwarzaniu ścieżki 12 i po
przyciśnięciu przycisku „Stop” zrealizuje on

swoją podstawową funkcję. Ale ponowne je-
go naciśnięcie spowoduje, że wybrana zosta-
nie automatycznie pierwsza ścieżka. Jest to
bardzo pomocne, gdyż przez podwójne naci-
śnięcie przycisku „Stop” można szybko po-
wrócić do początkowego utworu odtwarzanej
płyty CD. Należy pamiętać, że kontroler bę-
dzie poprawnie pracował z napędami, które są
sprawne, dlatego też przy zakupie starego na-
pędu CD-ROM warto się upewnić, czy jest on
sprawny i że powodem pozbycia się go nie
jest zużycie diody laserowej czy mechani-
zmów. Na samym początku artykułu wspo-
mniane było, że jest możliwość wykonania do
układu dodatkowego przedwzmacniacza, ale
ze względu na brak pamięci programu mikro-
kontrolera U1 dołączony przedwzmacniacz
będzie musiał mieć swój mikrokontroler,
który z kontrolerem CD-ROM może się ko-
munikować poprzez wyprowadzoną magistra-
lę I

2

C. Wyświetlacz LCD może być współ-

dzielony przez dwa układy przez odpowiednie
sterowanie dodatkowym multiplekserem czy
innym podobnym układem. Jeżeli będą proś-
by o taki przedwzmacniacz, to z chęcią go wy-
konam. Wydaje mi się że własnoręcznie wy-
konany niewielkim kosztem odtwarzacz płyt
CD przyczyni się do zadowolenia jego wyko-
nawców lub tych osób, dla których go wyko-
nano. A może postanowią dodatkowo zmody-
fikować lub rozszerzyć niektóre istniejące już
funkcje odtwarzacza CD.

Marcin Wiązania

18

Elektronika dla Wszystkich

Wykaz elementów

RReezzyyssttoorryy
R1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .220Ω
P1 . . . . . . . . . . . . . .Potencjometr montażowy leżący 1kΩ
Kondensatory
C1,C2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27pF
C3,C5,C7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100nF
C4,C6,C8 . . . . . . . . . . . . . . . . . . . . . . . . . . .1000µF/25V
C9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100µF
Półprzewodniki
U1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .AT90S8515
U2 . . . . . . . . . . . . . . . . . . . . . . . .Wyświetlacz LCD 2*16
U3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .74HC573
U4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .78S12
U5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .78S05
U6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .DS1813
U7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .TFMS5360
B1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Mostek 1,5A
X1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Kwarc 8MHz
Inne
S1 – S9 . . . . . . . . . . . . . . . . . . . .Przyciski typu mikrostyk
Z1 . . . . . . . . . . . . . . . . . . . . . . . . . . .Złącze goldpin 2x20
GN1 . . . . . . . . . . . . .Gniazdo bezpiecznikowe przykręcane

do obudowy

GN2,GN3 . . .Gniazda typu chinch przykręcane do obudowy

Komplet ppodzespołów zz ppłytką

jest ddostępny ww sieci hhandlowej AAVT

jako kkit sszkolny AAVT-22660.


Wyszukiwarka

Podobne podstrony:
edw 2003 03 s56
edw 2003 03 s60
edw 2003 03 s13
edw 2003 03 s59
edw 2003 03 s28
edw 2003 03 s52
edw 2003 09 s16
edw 2003 03 s10
edw 2003 03 s30
edw 2003 11 s16
edw 2003 03 s37
edw 2003 03 s24
edw 2003 03 s22
edw 2003 03 s51
edw 2003 11 s16
edw 2003 03 s61
edw 2003 03 s55

więcej podobnych podstron