ZL5ARM Zestaw uruchomieniowy dla mikrokontrolerów LPC2119/2129 (rdzeń ARM7TMDI-S) ZL5ARM Zestaw uruchomieniowy dla mikrokontrolerów LPC2119/2129 (rdzeń ARM7TMDI-S) 1 Zestaw ZL5ARM opracowano z myślą o elektronikach chcących szybko zaznajomić się z mikrokontrolerami z rdzeniem ARM7TDMI-S wyposażonymi w interfejs CAN. Zastosowane w zestawie szybkie (taktowane sygnałem zegarowym o częstotliwości do 60 MHz), nowoczesne mikrokontrolery firmy Philips umożliwiają implementowanie aplikacji wymagających dużej mocy obliczeniowej. Architektura mikrokontrolerów i ich wyposażenie wewnętrzne stanowią doskonałą platformę dla programistów korzystających z języków wysokiego poziomu. Kompatybilność z zestawem MCB2100 firmy Keil Schemat blokowy zestawu pokazano na rys. 1. Standardowo zestawy ZL5ARM są dostarczane z mikrokontrolerem LPC2129 (tab. 1), ale zamiast niego może być zainstalowany mikrokontroler LPC2119 o dwukrotnie mniejszej pamięci Flash. Alternatywnie jest dopuszczalne montowanie na płytce zestawu innych mikrokontrolerów z rodziny LPC2100 w obudowie LQFP64, jak na przykład: LPC2114 lub LPC 2124. Zastosowane mikrokontrolery charakteryzują się bogatym wyposażeniem wewnętrznym, w skład którego wchodzą m.in. (rys. 2): przetwornik A/C z analogowym multiplekserem na wejściu, interfejsy szeregowe SPI, I2C, UART i CAN, do 256 kb pamięci Flash z możliwością programowania w systemie, 16 kb pamięci SRAM, wbudowany kontroler przerwań, sprzętowy zegar RTC, watchdog, timery o zaawansowanych możliwościach (w tym generacja PWM), system zarządzania pobieraną energią i pętla PLL służąca do powielania częstotliwości zewnętrznego sygnału zegarowego. Rys. 1. Schemat blokowy zestawu ZL5ARM Rys. 2. Schemat blokowy mikrokontrolerów LPC2119/2129
2 ZL5ARM Zestaw uruchomieniowy dla mikrokontrolerów LPC2119/2129 (rdzeń ARM7TMDI-S) Programowanie pamięci Flash Niezależnie od typu zastosowanego mikrokontrolera, programowanie pamięci programu (typu Flash) odbywa się na jeden z dwóch sposobów: poprzez interfejs RS232 (kanał COM0 rys. 3), w czym jest pomocny program narzędziowy LPC2000 Flash Utility (rys. 4), dostępny bezpłatnie na stronie internetowej firmy Philips (jest on dostarczany także na płycie CD-ROM dołączanej do zestawu), poprzez interfejs JTAG, co wymaga zastosowania dodatkowego interfejsu sprzętowego (np. ZL14PRG Wiggler). W przypadku korzystania z programu LPC2000 Flash Utility prędkość transmisji danych należy ustalić na 19,2 kbd (do tego celu służy okno Use Baud Rate) i podać częstotliwość zewnętrznego sygnału zegarowego lub częstotliwość rezonansową oscylatora dołączonego do mikrokontrolera (w oknie XTAL Freq.). Domyślnie jest ona ustalana na 12 MHz i w takie właśnie kwarce są standardowo wyposażane płytki ZL5ARM. Program LPC2000 Flash Utility jest dostępny na płycie CD-ROM dołączonej do zestawu oraz w Internecie pod adresem: http://www.semiconductors.philips.com/files/products/standard/mii crocontrollers/utilities/lpc2000_flash_utility.zip. Rys. 3. Lokalizacja złącza COM0 (stosowane do programowania pamięci Flash mikrokontrolera LPC 21x4 w systemie IAP) Rys. 4. Okno programu LPC2000 Flash Utility Zestawy wyposażono w prosty interfejs ułatwiający korzystanie z programowania IAP (In Application Programming) via RS232, który umożliwia m.in. automatyczne zerowanie mikrokontrolera po zakończeniu programowania. W tym celu zwory J7 i J10 należy zainstalować w pozycji ON, a w oknie Communication programu LPC2000 Flash Utility muszą być zaznaczone opcje: Use DTR/DTS for reset... (rys. 5) oraz w oknie Flash Programming opcja Execute Code after Upload (rys. 6). Rys. 5. Zalecana konfiguracja programu LPC2000 Flash Utility Rys. 6. Fragment okna programu LPC2000 Flash Utility, służąca do wskazania pliku wynikowego (HEX)
ZL5ARM Zestaw uruchomieniowy dla mikrokontrolerów LPC2119/2129 (rdzeń ARM7TMDI-S) 3 Na stronie producenta mikrokontrolerów oraz na płycie dołączonej do zestawu jest dostępny upgrade bootloadera, w jaki wyposażono mikrokontrolery LPC2100. Oprogramowanie jest dostępne pod adresem: http://www.semiconductors.philips.com/files/products/standard/microconi trollers/utilities/lpc2000_bl_update.zip. Rys. 7. Schemat elektryczny zestawu ZL5ARM
4 ZL5ARM Zestaw uruchomieniowy dla mikrokontrolerów LPC2119/2129 (rdzeń ARM7TMDI-S) Opis układu Schemat elektryczny zestawu ZL5ARM przedstawiono na rys. 7. Zestaw wyposażono w trzynapięciowy stabilizator napięcia zasilającego (wyjścia: 1,8/3,3 i 5 V), który od strony wejściowej zabezpieczono przed podaniem napięcia zasilającego o nieprawidłowej polaryzacji za pomocą mostka Graetz'a B1. Zestaw powinien być zasilany napięciem o wartości 9...15 VDC, można je dołączyć do jednego z gniazd: JP16 lub JP17. Dołączenie napięcia zasilającego jest sygnalizowane świeceniem diody LED D12. Złącze JP7 służy do dołączenia do mikrokontrolera wyświetlacza alfanumerycznego LCD wyposażonego w sterownik HD44870 lub z nim kompatybilny. Elementem interfejsu użytkownika są także diody LED D2...D10 dołączone poprzez bufor IC3 do portów P1.16...P1.23 mikrokontrolera IC1. Wymianę danych z otoczeniem umożliwiają dwa interfejsy szeregowe, wykorzystujące wewnętrzne UART-y mikrokontrolera IC1 i konwerter napięciowy IC2. Port COM0 służy także do programowania pamięci Flash mikrokontrolera w aplikacji. Badanie działania przetworników A/C wbudowanych w mikrokontroler ułatwią: termistor RT1 oraz potencjometr PR2, które zastosowano na płytce drukowanej zestawu (rys. 8). Zestaw wyposażono ponadto w złącze umożliwiające dołączenie do mikrokontrolera interfejsu JTAG (JP15), który jest uaktywniany po zainstalowaniu zwory J9 w pozycji ON i wyzerowaniu mikrokontrolera. Rys. 8. Rozmieszczenie najważniejszych elementów zestawu ZL5ARM
ZL5ARM Zestaw uruchomieniowy dla mikrokontrolerów LPC2119/2129 (rdzeń ARM7TMDI-S) Program przykładowy Mikrokontrolery w zestawach są dostarczane z zaprogramowaną pamięcią Flash. Program, którego wersja źródłowa i wynikowa (w postaci pliku HEX) znajduje się na płycie CD-ROM dołączonej do zestawu, umożliwia przetestowanie działania wyświetlacza LCD, przetwornika A/C (kanał AIN0) oraz portu komunikacyjnego RS232 (UART1). Po włączeniu zasilania na wyświetlaczu jest wyświetlany (w dwóch wierszach) tekst "* ZL5ARM *"/"* *". Po inicjalizacji wyświetlacza, na diodach LED jest wskazywana binarna (skrócona do 8 najbardziej znaczących bitów) wartość odpowiadająca napięciu zmierzonemu przez przetwornik A/C, ta sama liczba (już w postaci 10-bitowej liczby szesnastkowej) jest wysyłana przez port komunikacyjny COM1 (9600/8/1/-) do współpracującego komputera. Przed uruchomieniem urządzenia należy sprawdzić, czy zwora na złączu J2 (LED) jest założona, w przeciwnym przypadku wyświetlacz LCD nie będzie działał. Konfiguracje zworek Przetwornik A/C W przypadku korzystania z kanałów AIN0 (potencjometr PR2 ANA_V) lub AIN1 (termistor RT1 NTC) na styki złącz (odpowiednio) J6 (ANA_EN) i J5 (NTC_EN) muszą być założone zwory. Programowanie/debugowanie przez JTAG W przypadku korzystania z interfejsu JTAG należy założyć zworkę na styki J9 (JTAG_ENA) i wyzerować mikrokontroler (za pomocą przycisku RES lub wyłączając i włączając zasilanie). Należy pamiętać, że w tym trybie odpowiednie linie I/O nie są dostępne dla innych elementów aplikacji. 5! pojedynczych Przełączenie mikrokontrolera w tryb JTAG powoduje, że jego niektóre wyprowadzenia nie mogą być wykorzystywane w aplikacji. Wynika to z faktu multipleksowania wielu funkcji na liniach I/O. Automatyczne zerowanie po programowaniu Oprogramowanie LPC2000 Flash Utility umożliwia automatyczne wyzerowanie mikrokontrolera po zakończeniu programowania pamięci, co wymaga zainstalowania zworki J8 (RST_EN) w pozycji ON. Przycisk RESET działa niezależnie od położenia tej zworki. Programowanie via RS232 Programowanie pamięci Flash poprzez interfejs RS232 wymaga uruchomienia bootloadera. Wykonuje to automatycznie program LPC2000 Flash Utility, co wymaga zainstalowania zworki J7 (ISP) w pozycji ON. Zalecane jest także uaktywnienie automatycznego zerowania mikrokontrolera po zakończeniu programowania, co wymaga zainstalowania zworki J8 (RST_EN) w pozycji ON. W przypadku, gdy inicjowanie pracy bootloadera odbywa się ręcznie, należy zainstalować zworkę J10 w pozycji ON i po wciśnięciu przycisku S5 (INT1) wyzerować mikrokontroler. Podczas pracy zestawu można wykorzystać przycisk S2 do własnych celów, np. jako wejście uniwersalne (linia P0.14) lub wejście przerwania zewnętrznego (EINT1). Interfejs USB Na płytce drukowanej zestawu przewidziano miejsce dla modułu konwertera USB<->RS232 (złącze JP20). Jest on dołączany do interfejsu UART1 mikrokontrolera IC1 za pomocą zworek JP18 (linia RxD) i JP19 (linia TxD). Zastosowana konfiguracja połączeń pozwala dołączać do UART1 zamiennie konwerter USB<->RS232 lub interfejs IC2.! dostępny USB w ZL5ARM Zestaw ZL5ARM może być wyposażony w opcjonalny konwerter USB<->RS 232, który jest w internetowym sklepie www.kamami.pl (http://www.kamami.pl/go/_info/?id=6432).
6 ZL5ARM Zestaw uruchomieniowy dla mikrokontrolerów LPC2119/2129 (rdzeń ARM7TMDI-S) Tab. 1. Zestawienie najważniejszych parametrów wybranych mikrokontrolerów z rodziny LPC2100 Typ układu Pamięć programu Flash [kb] Pamięć SRAM [kb] Timery 32-bitowe Timer PWM Kanały PWM Liczba linii I/O UART I2C SPI CAN Przetwornik A/C (kanały/ rozdz.) Liczba przerwań (zewnętrznych) Wewnętrzna częstotliwość taktowania [MHz] Obudowa LPC2194 256 16 4 1 6 46 2 1 2 4 4/10 19 (4) 60 LQFP64 LPC2129 256 16 4 1 6 46 2 1 2 2 4/10 19 (4) 60 HVQFN64, LQFP64 LPC2119 128 16 4 1 6 46 2 1 2 2 4/10 19 (4) 60 HVQFN64, LQFP64 LPC2124 256 16 4 1 6 46 2 1 2-4/10 19 (4) 60 HVQFN64, LQFP64 LPC2114 128 16 4 1 6 46 2 1 2-4/10 19 (4) 60 HVQFN64, LQFP64 Interfejsy CAN Zestaw ZL5ARM wyposażono w dwa interfejsy CAN (U1 i U2), których wejścia TXD są dołączone do linii TD1 i TD2 mikrokontrolera, natomiast wyjścia można odłączyć od wejść RD1 i RD2 za pomocą zworek (odpowiednio) JP5 i JP6. Za pomocą zworki JP10 można przełączyć układy U1 i U2 w tryb nieaktywny (wejścia STB tych układów są podciągnięte do plusa zasilania, gdy zainstalowano zworkę JP10 w pozycji OFF). Na rys. 9 pokazano rozmieszczenie sygnałów w gniazdach CAN1 i CAN2. Rys. 9. Przypisanie sygnałów do styków gniazd CAN1 i CAN2 Klawiatura Na płytce zestawu ZL5ARM przewidziano miejsce dla 4 przycisków chwilowych, które spełniają rolę prostej klawiatury. Są one dołączane do portów P0.4...7 mikrokontrolera za pomocą zworek JP11...14 (styki przycisków włączone pomiędzy masę i linię portu, gdy zworki są w pozycji ON). Tab. 2. Sposób dołączenia modułu LCD do portów mikrokontrolera Numer wyprowadzenia LCD Nazwa sygnału LCD Linia portu mikrokontrolera 7 D0 P1.16 8 D1 P1.17 9 D2 P1.18 10 D3 P1.19 11 D4 P1.20 12 D5 P1.21 13 D6 P1.22 14 D7 P1.23 6 E P0.29 5 R/W (na stałe podano 0 ) 4 RS P0.30 W skład zestawu ZL5ARM wchodzi: zmontowana płytka z mikrokontrolerem LPC2129; wyświetlacz LCD 2x16 znaków; płyta CD-ROM (dokumentacja techniczna zestawu, noty katalogowe mikrokontrolerów 21xx, aplikacja do programowania IAP LPC2000 Flash Utility, kompilator języka C GCC, demonstracyjna wersja Keil µvision ograniczenie do 16 kb, programy przykładowe). BTC Korporacja 03-237 Warszawa ul. Inowłodzka 5 fax: (22) 814-13-02 e-mail: biuro@btc.pl http://