bit |
31:28 27 |
26:24 23:22 |
21 |
20 10:17 |
16 15:8 |
7:0 |
nazwa |
- EDGE |
START - |
PDN |
CLKS |
BURST CLKDIV |
SEL |
Wartość |
- |
1 |
* |
0x68 |
0x01 |
Tabela 1
górnoprzepustowe, których zadaniem jest odcięcie składowej stałej - mają one częstotliwość graniczną około 72Hz. Wzmacniacz U5 ma dodatkowo zaimplementowany filtr dolnoprzcpustowy o częstotliwości granicznej około 16kHz. Konieczność jego użycia zostanie poruszona w dalszej części artykułu. Układy U3, U4, U6 są scalonymi stabilizatorami napięcia. Koncktor J1 jest przewidziany do podłączenia płytki z mikrokontrolerem -przesyłane są przez niego potrzebne napięcia oraz wzmocniony i odfiltrowany sygnał z mikrofonu.
Rysunek 2 ukazuje schemat ideowy płytki z mikrokontrolerem LPC2103. Procesor ten należy do rodziny AR VI charakteryzującej się szybkim 32-bitowym rdzeniem. Do poprawnej pracy wymaga napięć 3,3V oraz 1,8V. Są one dostarczane przez dwa stabilizatory: U3 i U4. Rezonator kwarcowy zapewnia sygnał taktujący rdzeń. Elementy Cl7 oraz LI filtrują napięcie zasilające przetwornik analogowo-cyfrowy. Taki zabieg zmniejsza zakłócenia powstające podczas pomiaru sygnałów analogowych. Dopuszczalne jest wlutowanic zamiast LI zworki kosztem minimalnego pogorszenia parametrów. Bardzo ważny jest rezystor R5 wymuszający stan niski na wyjściu DBGSEL (wyłącza interfejs JTAG).
Wspomniałem wyżej, że dla ułatwienia zabawy wbudowałem programator. Do wgrania oprogramowania potrzebny jest prosty kabel, którego schemat pokazany jest na rysunku 3.
DH9 DB9
Można wpiąć cały układ bezpośrednio do portu komputera, obchodząc się bez tego przewodu. Po wyjęciu zworek z JP1 ilumino-fonia zyskuje możliwość... programowania innych układów! Wystarczy wykonać prosty przewód łączący JP1 z układem docelowym. Oba układy muszą mieć jednakże wspólną masę.
Do napisania oprogramowania wykorzystałem język C++ dostarczony z pakietem WinARM. Plik (o objętości ponad 90MB) można znaleźć pod adresem http://www.siwa-wi.arubi.uni-kl.de/avr_projccts/arm_pro-jects/WinARM-20060606.zip W razie problemów polecam szukanie pliku przez google.com. Instalacja jest prosta i składa się z dwóch kroków. Po pierwsze, rozpakujemy pliki do wybranego folderu, np C:\winarm. Właściwie zainstalowany pakiet można zobaczyć na rysunku 4. Teraz trzeba podać ścieżkę dostępu dla systemu operacyjnego W tym celu należy wybrać Start-> Ustawienia->Pcwe! sterowania, następnie ikonę System, a po otwarciu okienka zakładkę Zaawansowane i nacisnąć przycisk Zmienne środowiska (rysunek 5).
Po tym zabiegu otworzy się okienko dialogowe (to już ostatnie). Zaznacz w nim pozycję Path, naci śnij przycisk Edytuj i, jeżeli zainstalowałeś środowisko w podanym wyżej folderze, DOPISZ (mc me usuwaj, tylko dopisz na końcu) ścieżkę: „C:\WinARM\bin; C:\WinARM\utils\ bin;” (rysunek 6).
Wymagany jest reset komputera. Można upewnić się, czy wszystko jest prawidłowo: w tym celu wybierz Start-> Uruchom i wpisz command.com.
Po uruchomieniu konsoli wrydaj polecenie Mrm-elf-c++'\ Jeżeli zobaczysz napis jak na rysunku 7, to ten etap jest już zakończony.
Na początek słów parę o organizacji projektu. Do popraw nej kompi lacj i potrzeba pliku z kodem źródłowym (w nim umieszczasz program), skryptu dla linkera, pliku makefile oraz pliku określającego organizację pamięci wr mikrokontrolerze. Na początku może się to wydawać straszne, ale nie „rozgryzaj” tego, zanim się dobrze nie oswoisz z nowym narzędziem. W dodatkowych materiałach (do pobrania z Elportalu EdW) znajduje się folder pusty. Jest to gotowy do użycia szablon zawierający wszystkie powyż sze pliki.
Zacznijmy od przygotowania środowiska do wygodnej pracy. Uruchom edytor Pro-grammers Notepad 2 (c:\WinAR\f\pn\ pn.exe), wybierz loois->Options i w otwartym okienku wybierz zakładkę Tools. W pozycji Scheme zaznacz (Nonę - Global Tools) i kliknij przycisk Add. Pojawi się okienko dialogowe - należy je wypełnić jak na rysunku 8 i kliknąć OK. Ponownie wybierz Add i wpisz odpowiednio: programowanie (pole NAME), zapis.bat (pole
COMMAND), %d (pole FOLDER) i wybierz F6 (pole SHORTCUT).
Od tej pory można skompilować projekt za pomocą klawisza F5, natomiast zaprogramować mikrokontroler za pomocą F6. Chcąc pisać oprogramowanie dla innych układów niż LPC2103. konieczna jest zmiana nazwy mikrokontrolera w pliku Makefile i przeróbka pliku mem model. Id.
Kilka uwag organizacyjnych. Na początku programu znajduje się linijka z następującą instrukcją: int status - O ;
Nie należy jej usuwać. Plik startowy jest tak ustawiony, aby dokonywał inicjałizacji obiektów globalnych i uruchamiał konstruk-tory obiektów globalnych. Po skasow-aniu tej linii nie będzie nic do inicjalizacji i powstanie błąd kompilacji
14 Grudzień 2006 Elektronika dla Wszystkich