|
|
|
| SPRZĘT | |
|
Ileż to opisów tego urządzenia ukazało się dla PC! Od prostych na rezystorach do wyrafinowanych kart symulujących w mniejszym lub większym stopniu Sound Blastery i tym podobne.
WERSJA PIERWSZA.
Najprostsza wersja Covoxa, przyłączana do wyjścia drukarki i zawierająca rezystory, kosztuje około 7zł. Czy warto się nią zajmować? Otóż nie! Dlaczego?
Aby osiągnąć wystarczającą dokładność należy użyć rezystorów o tolerancji 0,5%. Takie rezystory kosztują około 1,4zł za sztukę. Zasada działania wymaga, aby w drabince (rys. 1) rezystory oznaczone jako 2R miały rezystancję dokładnie dwa razy większą od rezystorów oznaczonych R. Można to osiągnąć tylko przez złożenie R z dwóch połączonych równolegle rezystorów. Elementy C1, C2, R17, R18, R19 stanowią filtr wyjściowy obcinający harmoniczne. Układ jest bardzo prosty i można go zmontować "w powietrzu". Jak łatwo policzyć, potrzeba 33 rezystorów po 1,4zł za sztukę, czyli 47zł. To dużo. Jeśli użyjemy rezystorów o tolerancji 2%, czy 5% nie osiągniemy wymaganej dokładności.
Rys. 1. Schemat prostego Covoxa.
Autor przeprowadził odpowiednie badania i stwierdził, że wersja z rezystorów, pokazana na rysunku 1, nie nadaje się do poważniejszych zastosowań.
WERSJA DRUGA.
Zajmiemy się drugą wersją, gdzie użyto scalonego przetwornika typu DAC-08. Zawiera on w swej strukturze drabinkę rezystorów R-2R, wzmacniacze operacyjne, bufory wejściowe. Na rysunku 2 przedstawiono schemat Covoxa. Wyjście przetwornika jest prądowe i do zmiany prądu na napięcie należy użyć wzmacniacza operacyjnego. Funkcję tę spełnia układ W1, a elementy C9, R5 tworzą filtr likwidujący harmoniczne powstałe w procesie przetwarzania A/C, C/A. Sygnał po przejściu przez wtórnik W2 przekazywany jest do wyjścia. Dodatkowo na wejście W2 dodawany jest sygnał pochodzący z układu dźwiękowego C-64, dzięki czemu sample można mieszać z dźwiękiem generowanym przez SID.
Rys. 2. Schemat ideowy Covoxa.
MONTAŻ.
Płytkę należy zaprojektować i wykonać we własnym zakresie na podstawie schematu z rysunku 2. Montaż rozpoczynamy od wlutowania rezystorów, kondensatorów. Następnie nalutowujemy złącze USER portu i układ US1. Przyłączamy urządzenie do komputera i sprawdzamy czy na wyprowadzeniu 2 US1 pojawiło się napięcie -5V. Jeśli nie, należy sprawdzić elementy C5, D1, D2, C6, US1, C7, C8. Należy zwrócić uwagę na prawidłowe wlutowanie kondensatorów. W następnej kolejności montujemy układy US2, US3. Jako US2 można użyć DAC0808, MC1408, DAC-08. Przyłączamy wyjście Covoxa do dowolnego wzmacniacza mocy i wpisujemy program z listingu 1 w Turboassemblerze.
;PROCEDURA GENERUJACA PRZEZ COVOX
;PRZEBIEG PILOKSZTALTNY
;O CZESTOTLIWOSCI OKOLO 2KHZ
*= $0810
;---------------------------------------
SEI ;WYL. PRZERWAN
LDX #$FF ;PORT NA WYJ
STX $DD03
INX ;WYL. VIC
STX $D011
LOOP INX ;GENEROWANIE
STX $DD01 ;PRZEBIEGU
STX $D020 ;PILOKSZTALTNEGO
NOP
NOP
JMP LOOP
;---------------------------------------
W głośniku powinien pojawić się ton o częstotliwości około 2kHz. Program generuje napięcie piłokształtne, co można sprawdzić oscyloskopem.
Rys. 3. Podłączenie wtyczek.
Pozostało jeszcze podłączyć wtyczki z Covoxem (rys. 3) i wypróbować programy zapisujące i odtwarzające sample ośmiobitowe (listing 2).
;PROCEDURA SAMPLUJACA DZWIEKI
;DO PAMIECI KOMPUTERA 8-BITOW
;ORAZ ODTWARZAJACA JE NA PRZERWANIACH
*= $0810
JMP READ
JMP WRITE
;---------------------------------------
START = $1000
KONIEC = $FF00
SPEED = $90
;---------------------------------------
STRLOW = $FA
STRHIGH = STRLOW+1
END = STRHIGH+1
SPD = END+1
PAMIEC = SPD+1
;---------------------------------------
WRITE SEI ;WYL PRZERWAN
LDA #$7F
STA $DD0D
LDA #>START ;ADRES STARTOWY
LDX #>KONIEC ;KONCOWY
LDY #SPEED ;PREDKOSC
STA STRHIGH
STX END
STY SPD
LDX #$00
STX STRLOW
JSR VOLUME ;GLOSNY SID
LDX #$07
JSR VOLUME
LDX #$0E
JSR VOLUME
LDY #$00 ;PORT NA WEJSCIE
STY $DD03
JSR TIMER
LOOP1 LDA $DD0D ;CZEKA NA TIMER
AND #$01
BEQ *-5
LDA $DD01 ;ODCZYT PROBKI
LSR A
LSR A
LSR A
LSR A
STA $D418 ;WYSLANIE DO SID
STA $D020
LDA $DC01 ;CZY BYL STOP
BPL STOP
LDA $DC01 ;CZY SPACJA
AND #$10
BNE LOOP1
;NACISNIETO SPACJE START ZAPISU
STY $D011 ;WYLACZENIE VIC
DALEJ LDA $DD0D ;CZEKA NA TIMER
AND #$01
BEQ *-5
LDA $DD01 ;POBRANIE PROBKI
INC $01
STA (STRLOW),Y
DEC $01
LSR A
LSR A
LSR A
LSR A
STA $D418
STA $D020
LDA $DC01 ;CZY BYL STOP
BPL STOP
INY ;ZWIEKSZ ADRES
BNE DALEJ
INC STRHIGH
LDA STRHIGH ;CZY END
CMP END
BNE DALEJ
STOP LDA #$1B ;WLACZA EKRAN
STA $D011
CLI ;I PRZERWANIA
RTS
;---------------------------------------
READ SEI ;WYLACZENIE IRQ
LDA #$7F
STA $DD0D
LDA #>START ;ADRES STARTOWY
LDX #>KONIEC ;KONCOWY
LDY #SPEED ;PREDKOSC
STA STRHIGH
STX END
STY SPD
LDA #$00
STA STRLOW
JSR TIMER
LDY #$FF ;PORT NA WYJSCIE
LDA $0318 ;ZAPAMIETANIE
LDX $0319 ;WEKTORA NMI
STA NMILOW
STX NMIHIGH
LDA #NMI
STA $0318
STX $0319
LDA #$81 ;ZEZWALA NA NMI
STA $DD0D
CLI
RTS
NMI PHA
TYA
PHA
LDY #$00
INC $01
LDA (STRLOW),Y ;ZM. BANKU RAM
DEC $01
STA $DD01
STA $D020
INC STRLOW
BNE *+4
INC STRHIGH
LDA STRHIGH ;CZY KONIEC
CMP END
BEQ STOPNMI
LDA $DC01 ;CZY BYL STOP
BPL STOPNMI
EXITNMI PLA ;WYJSCIE Z NMI
TAY
PLA
BIT $DD0D
RTI
STOPNMI LDA NMILOW ;STARY WEKTOR
LDX NMIHIGH
STA $0318
STX $0319
LDA #$01 ;WYL PRZERWAN
STA $DD0D
BNE EXITNMI
;---------------------------------------
VOLUME
LDA #$00
STA $D405,X
LDA #$FF
STA $D402,X
STA $D403,X
LDA #$F0
STA $D406,X
LDA #$41
STA $D404,X
RTS
;---------------------------------------
TIMER
LDA #$00 ;USTAW TIMER
STA $DD05
LDA SPD
STA $DD04
LDA #$01
STA $DD0E
LDA $DD0D
RTS
;---------------------------------------
NMILOW
.BYTE $00
NMIHIGH .BYTE $00
;---------------------------------------
Jak widać, program jest bardzo podobny do wersji czterobitowej, co jest naturalne. Niektórzy zapytają, dlaczego podczas zapisu skierowałem dźwięki z samplera na SID? Otóż nie można mieć w porcie równocześnie Samplera i Covoxa.
WYKAZ ELEMENTÓW.
Rezystory
R1 : 220Ohm
R2, R3, R5 : 2,7kOhm
R4 : 8,2kOhm
R6, R7 : 10kOhm
Kondensatory
C1 : 47uF
C2, C4, C7, C9 : 22nF
C3, C8 : 22uF
C10 : 10nF
C11 : 470nF
Półprzewodniki
D1, D2 : 1N4148
US1 : 79L05
US2 : DAC-08
US3 : TL082
Różne
Złącze USER
DIN5 : wtyk i gniazdo
Literatura:
Andrzej Markowski: Układy analogowe w systemach mikroprocesorowych WNT, Warszawa 1991, 1992.
USKA Układy analogowe 5/95. AVT, Warszawa, 1996.
Marian Łakomy, Jan Zabrodzki: Scalone przetworniki analogowo-cyfrowe i cyfrowo-analogowe. PWN, Warszawa 1985.
Autor:
Data realizacji:
Data publikacji:
Data modyfikacji:
Pierwsza publikacja:
|
|
Sławomir Skrzyński
-
16.3.2004
-
EDW 4/97
|
|
Instrukcja używania systemu komentarzy
- W polu "Podpisz się" umieszczasz swoje Imię, Nazwisko albo Pseudonim używając znaków alfanumerycznych: A-Z, 0-9 oraz znaków specjalnych, np.: !^<>" ' itp.
Tagi HTML są nieaktywne.
- W polu "Wpisz treść" umieszczasz komentarz używając znaków alfanumerycznych: A-Z, 0-9 oraz znaków specjalnych, np.: !^<>" ' itp. Klawisz ENTER tworzy nowy akapit.
Tagi HTML są aktywne. Możesz:
Możliwość:
|
Komenda:
|
Przykład:
|
a. Pogrubić tekst: |
<B></B> |
Pogrubiony |
b. Pochylić tekst: |
<I></I> |
Pochylony |
c. Podkreślić tekst: |
<U></U> |
Podkreślony |
d. Stworzyć indeks górny: |
<SUP></SUP> |
Indeks górny |
e. Stworzyć indeks dolny: |
<SUB></SUB> |
Indeks dolny |
f. Użyć czcionki maszynowej: |
<TT></TT> |
Czcionka maszynowa |
Adresy URL wpisujemy w postaci http://nazwastrony.pl, ftp://nazwastrony.pl.
Adresy email wpisujemy w postaci nazwa@nazwa.pl.
Adresy Gadu-Gadu wpisujemy w postaci gg:1234567 (bez spacji).
Proszę pamiętać o domykaniu otwartych tagów.
Przed naciśnięciem przycisku Komentuj, zaznacz checkboks przy jego prawym boku.
|
|
|