mikser audio ze sterowaniem cyfrowym 2


Mikser audio ze sterowaniem cyfrowym
P R O J E K T Y
Mikser audio
ze sterowaniem
cyfrowym, część 2
kit AVT-490
Przedstawiony w pierwszej lewym zmiksowane sygnały au-
czÍÅ›ci artykuÅ‚u sposÛb sterowa- dio z wejśĘ VIN5..VIN7 natomiast
nia mikserem jest naturalny, jed- sygnał audio z wejścia VIN8 ma
nak rozwiązanie takie nie w peł- byĘ dodawany do prawego i le-
Druga czÍśĘ artykuÅ‚u
ni wykorzystuje mołliwości ukła- wego kanału wyjściowego. Opisa-
dotyczy komputerowego
du SSM2163. Układ SSM2163 na konfiguracja wejśĘ jest dosyĘ
sterowania pracÄ… miksera. zapewnia elastyczne konfiguro- zawiÅ‚a - sytuacjÍ takÄ… ilustruje
wanie wejśĘ audio (tab. 1 w pier- rys. 13. Wyraünie widaĘ, Å‚e uzys-
Przedstawiona zostanie
wszej czÍÅ›ci artykuÅ‚u), jednak kanie takiej konfiguracji bez kom-
przykładowa procedura
wyposałenie w te funkcje konsoli putera byłoby skomplikowane,
wysyłania danych do miksera
mikserskiej znacznie skompliko- wiÍc sterowanie komputerowe
oraz sposÛb poÅ‚Ä…czenia
waÅ‚oby budowÍ
komputera z mikserem.
urzÄ…dzenia. Przy-
kładem ilustrują-
cym przewagÍ ste-
rowania kompute-
rowego nad trady-
cyjnym (oczywiÅ›-
cie w przypadku,
gdy istotnym
czynnikiem jest
cena urzÄ…dzenia)
niech bÍdzie na-
stÍpujÄ…ca sytuacja:
w kanale wyjścio-
wym prawym na-
leły uzyskaĘ
zmiksowane syg-
nały audio
z w e j ś Ę
VIN1..VIN4, w ka- Rys. 13. Przykładowa konfiguracja wejść audio
miksera możliwa do uzyskania w programie
nale wyjściowym
sterujÄ…cym.
Elektronika Praktyczna 3/99
70
Mikser audio ze sterowaniem cyfrowym
List. 2. Procedura wysłania danych do miksera.
TabBajt: array[0..7] of Byte; {tablica z jedynkami }
kanal := B;
..... { wartość adresu do wysłania jest już obliczona }
OutPort( CentrPort, 3 ); { 0 na D2 rozpoczyna zapis }
for i:=7 downto 0 do
TabBajt[0] := 1; begin
TabBajt[1] := 2; B := kanal;
TabBajt[2] := 4;
TabBajt[3] := 8; if (B and TabBajt[i]) <> 0 then { czyli bit jest ustawiony }
TabBajt[4] := 16; B := TabBajt[1] { 00000010 }
TabBajt[5] := 32; else
TabBajt[6] := 64; B := 0; { 00000000 }
TabBajt[7] := 128;
OutPort( CentrPort, B ); { wartość wysłana }
.....
B := B or TabBajt[0]; { 000000x1 - CLK zapis }
OutPort( CentrPort, B ); { zbocze narasta }
const
CentrPort = $378; { adres portu drukarkowego } OutPort( CentrPort, 0 ); { zbocze opada }
end;
.....
OutPort( CentrPort, TabBajt[2] ); { 1 na D2 kończy zapis bajtu}
procedure OutPort( PortWy: Word; BajtWy: Byte );
begin { obliczenie wartości do wysłania }
BajtWy := not BajtWy; B := wartosc and (not TabBajt[7]); { 0 na D7 }
asm wartosc := B;
mov dx,PortWy { wartość do wysłania jest już obliczona }
mov al,BajtWy OutPort( CentrPort, 1 ); { 0 na D2 rozpoczyna zapis }
out dx,al for i:=7 downto 0 do
end; { asm } begin
end; { OutPort } B := wartosc;
if (B and TabBajt[i]) <> 0 then { czyli bit jest ustawiony }
..... B := TabBajt[1] { 00000010 }
else
B := 0; { 00000000 }
procedure Send( kanal: Integer; wartosc: Integer );
{ D0 = CLK; D1 = DATA } OutPort( CentrPort, B ); { wartość wysłana }
var
B: Byte; B := B or TabBajt[0]; { 00000011 - CLK zapis }
i: Integer; OutPort( CentrPort, B ); { zbocze narasta }
begin
{ obliczenie adresu } OutPort( CentrPort, 0 ); { 00000000 }
B := kanal or TabBajt[7]; { 1 na D7 } { zbocze opada }
end;
B := B or TabBajt[5]; { 1 na D5 } OutPort( CentrPort, TabBajt[2] ); { 1 na D2 kończy zapis bajtu}
B := B or TabBajt[6]; { 1 na D6 }
end; { wyslij }
mikserem jest w pełni uzasadnio- - bit 2 rejestru danych
ne zarÛwno ze wzglÍdu na koszt - do wejÅ›cia !WRITE
urzÄ…dzenia, jak i wygodÍ sterowa- & !LOAD ukÅ‚adu
nia. US2;
Znaczenie bitÛw
Połączenie miksera 0..2 jest takie samo
z komputerem jak w przypadku ste-
Mikser jest sterowany kompu- rowania układem
terem poprzez port drukarkowy. SSM2163 za pomocÄ…
Zdecydowano siÍ na ten port ze procesora US1. Ponie-
wzglÍdu na to, Å‚e nie wymagaÅ‚o waÅ‚ poczÄ…tkowo nie
to przebudowania układu elekt- przewidywano kom-
rycznego miksera a zaimplemento- puterowego sterowa-
wanie protokołu wpisywania da- nia pracą miksera, na
nych do układu SSM2163 jest płytce drukowanej nie
łatwe. Przed połączeniem miksera wyznaczono miejsc,
z komputerem naleÅ‚y wyjąĘ z pod- do ktÛrych moÅ‚na do-
stawki procesor US1. W połącze- lutowaĘ przewody łą-
niu wykorzystano trzy bity portu czÄ…ce z portem dru-
drukarkowego, ktÛre sÄ… doÅ‚Ä…czone karkowym. Z tego
w nastÍpujÄ…cy sposÛb: wzglÍdu przewody te
- bit 0 rejestru danych - do naleły dolutowaĘ do
wejścia CLK układu US2; odpowiednich wejśĘ
- bit 1 rejestru danych - do układu US2. Dodatko-
Rys. 14. Schemat elektryczny układu
wejścia DATA układu US2; wo jako zabezpiecze- zabezpieczającego z transoptorami.
Elektronika Praktyczna 3/99
71
Mikser audio ze sterowaniem cyfrowym
nie naleły zastosowaĘ dodatkowy
interfejs z transoptorami - sche-
mat elektryczny takiego układu
pokazano na rys. 14.
Procedura wysyłania
danych
Algorytm wysyłania danych
jest taki sam jak w przypadku
sterowania mikserem za pomocÄ…
mikroprocesora US1. Na listingu
2 pokazano przykładową imple-
mentacjÍ tego algorytmu w jÍzyku
Delphi. W procedurze Send jest
wykorzystywana procedura Out-
Port, umołliwiająca wpisywanie
dowolnej wartości do określonego
portu sprzÍtowego komputera. Pa-
rametrami procedury Send sÄ…:
numer kanału miksera (od 0 do 7)
oraz wartośĘ wzmocnienia w da-
nym kanale (od 0 do 63).
ProcedurÍ Send moÅ‚na podzie-
liĘ na dwie czÍÅ›ci. Zadaniem
Rys. 15. Widok okna przykładowej aplikacji sterującej pracą miksera.
pierwszej jest wysłanie do układu
SSM2163 adresu kanaÅ‚u ktÛrego
ustawienia chcemy zmieniĘ. Naj- Opis przykładowej wartości wzmocnienia. Dodatko-
pierw jest obliczana wartośĘ aplikacji wo moÅ‚na ustaliĘ, ktÛre z wejśĘ
zmiennej kanal, zgodnie z tab. 1. Do kitÛw w wersji ìAî i ìBî audio ma byĘ doÅ‚Ä…czone do wy-
NastÍpnie wartośĘ tej zmiennej jest doÅ‚Ä…czana dyskietka z przy- branego kanaÅ‚u wyjÅ›ciowego.
jest szeregowo wysyłana poprzez kładową aplikacją umołliwiającą Dołączany do kitu program jest
port drukarkowy do układu US2. sterowanie mikserem za pomocą tylko przykładową aplikacja, ale
Druga czÍśĘ procedury wykonuje komputera. Na rys. 15 przedsta- pozwala w peÅ‚ni sterowaĘ pracÄ…
podobne operacje, lecz dotyczą wiono widok okna tej aplikacji. miksera. Oczywiście programista
one wartości wzmocnienia w da- Przedstawiona na list. 2 procedu- mołe, korzystając z procedury
nym kanale. Wartości te są zgod- ra wysyłania danych do miksera Send, napisaĘ inny program do-
ne z przedstawionymi w tab. jest fragmentem tego programu. stosowany do indywidualnych po-
1 i tab. 2. Listing jest opatrzony Poziom wzmocnienia w poszcze- trzeb. Ciekawy efekt (pojawiania
obszernymi komentarzami, tak gÛlnych kanaÅ‚ach ustala siÍ prze- siÍ i zanikania düwiÍku) moÅ‚na
wiÍc jego dokÅ‚adniejsze omÛwie- suwajÄ…c suwaki wirtualnych po- uzyskaĘ ustalajÄ…c wartośĘ wzmoc-
nie nie jest konieczne. WyjaÅ›nie- tencjometrÛw. NajwiÍksze wzmoc- nienia w kanale audio za pomocÄ…
nia moÅ‚e wymagaĘ tylko sposÛb nienie uzyskuje siÍ w gÛrnym po- funkcji sinus. Wszystko zaleÅ‚y od
wykorzystania w procedurze tabli- Å‚oÅ‚eniu suwakÛw. Na list. 3 znaj- inwencji programisty!
cy TabBajt. W tablicy tej sÄ… prze- duje siÍ procedura obsÅ‚ugujÄ…ca PaweÅ‚ ZbysiÅ„ski
chowywane wartoÅ›ci, odpowiadajÄ…- zdarzenie OnChange, ktÛra jest
ce ustawieniu pojedynczych bitÛw wywoÅ‚ywana po kaÅ‚dym przesu- Opisana w artykule przykÅ‚a-
w ramach bajtu (odpowiednie war- niÍciu suwaka standardowego dowa aplikacja sterujÄ…ca pracÄ…
toÅ›ci widaĘ na list. 2). WartoÅ›ci komponentu Delphi TrackBar. Po- miksera jest doÅ‚Ä…czana do kitÛw
te sÄ… wykorzystywane w opera- Å‚oÅ‚enie suwaka moÅ‚na odczytaĘ w wersji ìAî i ìBî. Program ten
cjach na pojedynczych bitach. z wÅ‚asnoÅ›ci Position komponentu jest rÛwnieÅ‚ dostÍpny w interne-
Przed wykonaniem połączenia TrackBar i ta właśnie wartośĘ cie pod adresem: http://
miksera z komputerem naleły (ustawiony zakres od 0 do 63) jest www.ep.com.pl/ftp.
wyjąĘ procesor US1 z podstawki. wykorzystywana do ustawiania
List. 3. Procedura obsługująca zdarzenie OnChange.
procedure TMiks.TB0Change(Sender: TObject);
begin
if TB0.Position = 0 then
L_DB0.Caption := " 0dB"
else
L_DB0.Caption := "-" + IntToStr(TB0.Position) + "dB";
Send( 0, TB0.Position );
end;
Elektronika Praktyczna 3/99
72


Wyszukiwarka

Podobne podstrony:
Mikser audio ze sterowaniem cyfrowym
Mikser audio ze sterowaniem cyfrowym, część 1
mikser audio ze sterowaniem cyfrowym 1
Wyniki Egzaminu z Metod i Algorytmów Sterowania Cyfrowego
sprawozdanie nr 6 bezposrednie sterowanie cyfrowe
Wyniki Egzaminu z Metod i Algorytmów Sterowania Cyfrowego 1
AVT5161 Zasilacz Sterowany Cyfrowo
Wykład 11 Sterowanie cyfrowe
Problem ze sterownikami Czytaj to!
zasilacz sterowany cyfrowo
Crowdfunding Zrealizuj swoj pomysl ze wsparciem cyfrowego Tlumu crowdf
Rozwiazanie problemow ze sterow
jak usunąćcrashdata ze sterownika airbag
Programowanie warsztatowe tokarki CNC ze sterowaniem Sinumerik 840D (Politechnika Poznańska)
Programowanie warsztatowe tokarki CNC ze sterowaniem Sinumerik 840D (Politechnika Poznańska)
mikser do zdalnego sterowania

więcej podobnych podstron