Konstrukcja nie ma ambicji doścignięcia urządzeń profesjonalnych typu Digirator DR2, ale przynajmniej zostawi w kieszeni nieco gotówki na ciekawsze eksperymenty. Układ modelowy generuje przebiegi funkcyjne (sinusoidalny, trójkątny, prostokątny) przy częstotliwości próbkowania zgodnej z CD (44,1 kHz) i ma możliwość ustawienia trzech tonów testowych 100 Hz/1 kHz/10 kHz oraz sygnał szumu białego. Generator ma możliwość płynnej i skokowej (0 dB/-20 dB/-40 dB) regulacji poziomu wyjściowego. Wyjście sygnału cyfrowego zrealizowano w standardzie współosiowym.
Generator jest zasilany napięciem stałym 5 V np. z zasilacza telefonu komórkowego. Ze względu na niewielkie wymiary jest możliwa praca "w terenie" przy zasilaniu urządzenia z czterech ogniw LR6.
Budowa
W związku z pewnym postępem technicznym od czasów EP12/99, generacja przebiegów testowych została powierzona procesorowi DSP. Zastosowano układ z rodziny SigmaDSP ze względów opisanych we wcześniejszych artykułach (min. łatwości tworzenia aplikacji, co jest niewątpliwą zaletą dla osób nieumiejących programować). Spośród rodzin układów ADAU1701, ADAU144x, ADAU145x wybrałem ADAU1446. Schemat blokowy procesora DSP z grupy ADAU144x zaprezentowano na rysunku 1.
Jego wybór był podyktowany przede wszystkim tym, że ten procesor ma wbudowane bloki funkcjonalne niezbędne do realizacji generatora, a w tym najważniejszy, czyli wbudowany nadajnik w standardzie S/PDIF, co zwalnia konstruktora z konieczności stosowania kolejnego układu np. WM8804. Jest to też najtańszy układ z rodziny ADAU144x, gdyż jest pozbawiony bloków konwersji częstotliwości próbkowania (ASRC), które w układzie generatora nie są wykorzystywane. Wbudowane, konfigurowalne porty GPIO zwalniają z konieczności realizacji interfejsu użytkownika w oparciu o procesor jednoukładowy, co dodatkowo upraszcza generator.
Schemat ideowy układu generatora S/PDIF pokazano na rysunku 2. Procesorowi DSP (U1) towarzyszą układ generowania sygnału zerowania U3 (ADM811T) i zewnętrzna pamięć EEPROM z interfejsem I²C U4 (24FC256).
Płytka generatora jest zasilana z gniazda micro USB (5 V/250 mA) poprzez stabilizator LDO U2 (ADP3339-3.3) dostarczający napięcie 3,3 V dla DSP. Tranzystor Q1 jest elementem regulatora stabilizatora napięcia 1,8 V zasilającego rdzeń DSP. Ze wzglądu na wysoką częstotliwość pracy rdzenia DSP dla poprawnej pracy układ wymaga sporej liczby kondensatorów odsprzęgających poszczególne wyprowadzenia zasilania.
Dioda PLED sygnalizuje załączenie napięcia zasilającego. Układ jest taktowany za pomocą rezonatora kwarcowego X1 (11,2896 MHz - dla częstotliwości próbkowania fs=44,1 kHz; z mnożnikiem fs×256). Sygnał S/PDIF poprzez obwód dopasowania złożony z rezystorów R7 i R8 oraz kondensatora C13 jest doprowadzony do gniazda RCA-SPO. Układ uzupełniają przełączniki SN (wybór szum/sygnał), SV (wybór prostokąt/sinus/trójkąt), SS (wybór 100 Hz/1 kHz/10 kHz), SF (tłumik 0 dB/-20 dB/-40 dB) oraz RV1 odpowiedzialny za regulowanie poziomu sygnału. Gniazdo USBi umożliwia zaprogramowanie pamięci EEPROM w systemie za pomocą programatora USBi. Gniazdo może zostać pominięte, jeżeli pamięć zostanie zaprogramowana w zewnętrznym programatorze EEPROM.
Wykaz elementówRezystory: (SMD 0805) Kondensatory: (SMD 0805) Półprzewodniki: Inne: |
Oprogramowanie
Aplikację generatora napisano, a raczej narysowano, w środowisku SigmaStudio. Schemat aplikacji zamieszczono na rysunku 3.
Układ zawiera trzy bloki generatorów sinusoidy (Tone1), prostokąta (Square), trójkąta (Triangle1). Każdy z nich składa się z trzech generatorów częstotliwości podstawowych 100 Hz/1 kHz/10 kHz, przełączanych multiplekserami sterowanymi pinami GPIO10 i GPIO11 (3-pozycyjny przełącznik SS). Kolejne dwa multipleksery sterowane pinami GPIO1 i GPIO2 umożliwiają wybór kształtu przebiegu (3-pozycyjny przełącznik SV).
Multiplekser sterowany za pomocą GPIO3 umożliwia wybór pomiędzy generowaniem szumu, a przebiegiem funkcyjnym (dwupozycyjny przełącznik SN). Stąd sygnał poprzez regulator poziomu sterowany poprzez przetwornik A/C (potencjometr RV1) AUX_ADC0/GPIO0 trafia na blok tłumika 20 dB/40 dB. Tłumienie sygnału jest ustawiane multiplekserem poprzez GPIO8 i GPIO9 (3-pozycyjny przełącznik SF). Sygnał wyjściowy jest doprowadzony do interfejsu układu S/PDIF (kanał 0/1).
Do uruchomienia aplikacji generatora jest konieczne skonfigurowanie sprzętowe ADAU1446 (zakładka Hardware ConfigurationConfig). W pierwszej kolejności należy skonfigurować system i pamięć aplikacji (24LC256) zgodnie z rysunkiem 4. Następnie należy skonfigurować układ taktowania DSP, jak na rysunku 5 (zakładka Hardware ConfigurationIC1 ADAU144x Register Control). Konfiguracji wymaga również blok S/PDIF, zgodnie z rysunkiem 6. Ostatnimi czynnościami jest skonfigurowanie przetwornika A/C i trybu pracy GPIO, co pokazano na rysunku 7 i rysunku 8.
Jeżeli wszystkie konfiguracje zostały ustawione prawidłowo, można zaprogramować pamięć EEPROM za pomocą USBi (zakładka Hardware ConfigurationIC2-WinE2PromLoader).
Montaż
Schemat montażowy generatora pokazano na rysunku 9. Zmontowany go na dwustronnej płytce drukowanej. Warto sprawdzić jakość montażu i przetestować płytkę pod kątem zwarć, gdyż jakiekolwiek błędy wykonawcze i montażowe mogą uszkodzić dosyć drogi procesor DSP.
Po zmontowaniu i przetestowaniu urządzenia, można zabrać się za jego wykorzystanie praktyczne. Przyrząd jest użyteczny, nietuzinkowy i na pewno wielokrotnie udowodni swoją przydatność w warsztacie elektronika, zwłaszcza zajmującego się nowoczesnymi urządzeniami audio.
Adam Tatuś, EP