Moduł uruchomieniowy mikrokontrolera MC68HC912B32
Transkrypt
Moduł uruchomieniowy mikrokontrolera MC68HC912B32
Instytut Cybernetyki Technicznej Systemy Mikroprocesorowe Moduł uruchomieniowy mikrokontrolera MC68HC912B32 Grzegorz Cielniak Wrocław 1999 1. Informacje ogólne Moduł uruchomieniowy jest tanim i prostym narzędziem używanym przy projektowaniu i uruchamianiu oprogramowania dla mikrokontrolera MC68HC912B32. Możliwość dołączania dodatkowych modułów sprzętowych pozwala na konstruowanie prototypów urządzeń, co jest szczególnie przydatne w laboratorium. Prezentowane tu rozwiązanie modułu, bazuje na fabrycznym produkcie EVB (Evaluation Board) firmy Motorola, a rozszerzenie jego możliwości polega na dostosowaniu wyprowadzeń złączy do standardów obowiązujących w laboratorium s. 010 Instytutu Cybernetyki Technicznej Politechniki Wrocławskiej. Dodatkowo istnieje możliwość wykorzystania urządzenia do komunikacji w standardzie MIDI (Musical Instrument Digital Interface) z urządzeniami i instrumentami muzycznymi. Opisywany moduł zawiera: • mikrokontroler MC68HC912B32 firmy Motorola, • asynchroniczny interfejs szeregowy RS 232C, • asynchroniczny interfejs szeregowy w standardzie MIDI (opcjonalnie), • interfejs SPI (Serial Peripheral Interface), • interfejs wyświetlacza ciekłokrystalicznego LCD, • złącze portu przetwornika analogowo-cyfrowego AD PORT, • złącze interfejsu BDM (Background Debug Mode), • złącza wszystkich wyprowadzeń mikrokontrolera, • zasilacz stabilizowany (napięcia 5-15 V AC/DC). Do zmontowania całości zaprojektowano płytkę drukowaną o wymiarach 13,1 x 8,64 cm. Można pominąć montaż nie wykorzystywanych części układu (złącza wszystkich wyprowadzeń mikrokontrolera (P1-P4), czy też interfejs MIDI). Schemat urządzenia, oraz rozmieszczenie elementów na płytce zamieszczono w rozdziale „Schematy i rysunki”. 2 2. Opis wyprowadzeń mikrokontroler MC68HC912B32 MC68HC912B32 jest 16-bitowym mikrokontrolerem firmy Motorola. Jest rozwinięciem wcześniejszych, bardzo popularnych, mikrokontrolerów z rodziny HC11 i jest z nimi całkowicie zgodny programowo. Ważniejsze zasoby sprzętowe mikrokontrolera: • 16-bitowa jednostka centralna (CPU12), • multipleksowana magistrala wewnętrzna, • pamięć: 32 kB Flash EEPROM, 768 B EEPROM, 1kB RAM, • 8-bitowy, 8-kanałowy przetwornik analogowo-cyfrowy, • 8-kanałowy układ timera, • synchroniczny interfejs transmisji szeregowej (SPI), • asynchroniczny interfejs transmisji szeregowej (SCI), • interfejs BDM, • funkcja Watchdog, • obudowa QFP 80. interfejs szeregowy RS 232C Aby umożliwić podłączenie komputera wyposażonego w złącze szeregowe, lub też zewnętrznego terminala do urządzenia wyposażono je w interfejs szeregowy standardu RS 232C. Numeracja końcówek złącza P51 odpowiada numeracji w typowym złączu DB-9, które należy podłączyć kablem taśmowym 10-żyłowym. Można zastosować również złącze DB-25. Tabela 1: Złącze interfejsu RS 232C (P51) GND TxD RxD - * 1 3 5 7 9 2 4 6 8 10 [NC] - nie podłączone 3 - [NC]* [NC] interfejs szeregowy MIDI Urządzenie można wykorzystać również do transmisji w standardzie MIDI. Jest to transmisja szeregowa, w której dane są przesyłane z prędkością 31250 (+/- 196) bitów na sekundę. Słowo ma długość osiem bitów z bitem startu i jednym bitem stopu, bez bitu parzystości. Standard definiuje trzy rodzaje złącz: • MIDI IN – przeznaczone do odbierania komunikatów, • MIDI OUT – przeznaczone do wysyłania komunikatów, • MIDI THRU – będące powieleniem sygnału MIDI IN, a tym samym umożliwiające przesyłanie sygnału do innego urządzenia, bez konieczności wykonywania dodatkowych przejściówek. Złącza te są gniazdami typu DIN-5. Połączenia z portem P52 należy dokonać kablem taśmowym 8-żyłowym (rys. 2. 1). Rys. 2.1. Sposób podłączenia gniazd interfejsu MIDI do złącza P52 Tabela 2: Złącze interfejsu MIDI (P52) MIDI IN_1 MIDI OUT_1 MIDI THRU_1 VCC 1 3 5 7 2 4 6 8 MIDI IN_2 MIDI OUT_2 MIDI THRU_2 GND interfejs SPI Złącze SPI służy do szeregowej synchronicznej wymiany danych pomiędzy mikrokontrolerami i urządzeniami zewnętrznymi. Dzięki niemu, do opisywanego urządzenia, można podłączyć istniejące już moduły laboratoryjne SPI (m. in. pamięć EEPROM, przetwornik AC). 4 Sygnały wykorzystywane w transmisji: • SCK – zegar synchronizujący transmisję, • MOSI – przesyłanie danych od jednostki nadrzędnej do podporządkowanej, • MISO – przesyłanie danych od jednostki podporządkowanej do nadrzednej, • PCSx – linie wyboru urządzenia zewnętrznego. Tabela 3: Złącze interfejsu SPI (P7) GND PCS0 PCS2 SCK MOSI 1 3 5 7 9 2 4 6 8 10 VCC PCS1 PCS3 MISO GND interfejs wyświetlacza ciekłokrystalicznego LCD Do złącza tego interfejsu można podłączyć typowy alfanumeryczny wyświetlacz LCD wyposażony w sterownik HD44780A00 firmy Hitachi. Tabela 4: Złącze wyświetlacza LCD (P9) GND CV R/W D0 D2 D4 D6 1 3 5 7 9 11 13 2 4 6 8 10 12 14 VCC RS E D1 D3 D5 D7 złącze portu przetwornika AD PORT Mikrokontroler MC68HC912B32 posiada 8-bitowy, 8 kanałowy przetwornik analogowo-cyfrowy. Dostęp do tego portu jest realizowany poprzez złącze AD PORT (P8). Tabela 5: Złącze przetwornika ADC (P9) GND GND GND GND GND GND GND GND GND GND 1 3 5 7 9 11 13 15 17 19 2 4 6 8 10 12 14 16 18 20 5 AIN0 AIN1 AIN2 AIN3 AIN4 AIN5 AIN6 AIN7 [NC] [NC] Napięcie odniesienia dla przetwornika można dostarczyć wprost ze źródła zasilania, lub też z układu zewnętrznego. Służy do tego zwora J10. W przypadku wykorzystania napięcia zasilania należy połączyć końcówki 1-2 i 5-6. W przypadku korzystania z zewnętrznego napięcia odniesienia do jego doprowadzenia służą końcówki 2, 4, 6. Tabela 6: Zwora napięcia odniesienia (J10) VCC VCC GND 1 3 5 2 4 6 REF+ GND REF- złącza interfejsu BDM Komunikacja w trybie BDM jest możliwa poprzez złącza BDMIN (P5) i BDMOUT (P6). Interfejs BDM w module uruchomieniowym może pracować w dwóch trybach: • obsługiwany jest mikrokontroler modułu (konieczne jest wykorzystanie SDI (Serial Debug Interface) firmy Motorola) • moduł obsługuje inne urządzenie zawierające mikrokontroler z rodziny HC12 Tabela 7: Złącze BDMIN (P5) BKGD IN [NC] [NC] 1 3 5 2 4 6 VCC RESET VCC Tabela 8: Złącze BDMOUT (P6) BKGD OUT [NC] [NC] 1 3 5 2 4 6 6 VCC RESET VCC złącza wszystkich wyprowadzeń mikrokontrolera Wszystkie wyprowadzenia mikrokontrolera MC68HC912B32, są dostępne poprzez złącza P1-P4. Takie rozwiązanie miało na celu umożliwienie budowy własnych urządzeń opartych na tym mikrokontrolerze. Tabela 9: Złącze wyprowadzeń mikrokontrolera (P1) PP5 PP3 PP1 PT0 PT2 VSS11 PT4 PT6 BKGD PB1 1 3 5 7 9 11 13 15 17 19 2 4 6 8 10 12 14 16 18 20 PP4 PP2 PP0 PT1 VDD10 PT3 PT5 PT7 PB0 PB2 Tabela 10: Złącze wyprowadzeń mikrokontrolera (P2) PA2 PA4 PA6 VDD47 VRH PAD0 PAD2 PAD4 PAD6 VDDAD 1 3 5 7 9 11 13 15 17 19 2 4 6 8 10 12 14 16 18 20 PA3 PA5 PA7 VSS48 VRL PAD1 PAD3 PAD5 PAD7 VSSAD Tabela 11: Złącze wyprowadzeń mikrokontrolera (P3) PS0/RX PS2 PS4/MISO PS6/SCK VFP PDLC5 PDLC3 PDLC1 VSSX77 PP7 1 3 5 7 9 11 13 15 17 19 2 4 6 8 10 12 14 16 18 20 PS1/TX PS3 PS5/MOSI PS7/SS PDLC6 PDLC4 PDLC2 PDLC0 VDDX78 PP6 Tabela 12: Złącze wyprowadzeń mikrokontrolera (P4) PB3 PB5 PB7 PE6/MODB PE4 VDDX31 EXTAL PE3 PE1 PA0 1 3 5 7 9 11 13 15 17 19 2 4 6 8 10 12 14 16 18 20 7 PB4 PB6 PE7 PE5/MODA VSSX30 RESET XTAL PE2 PE0 PA1 zasilacz stabilizowany Zasilacz stabilizowany dostarcza napięcie +5V do układów urządzenia. Jego konstrukcja umożliwia dostarczenie zewnętrznego napięcia 9–15V prądu stałego, lub zmiennego, przy czym polaryzacja napięcia stałego jest bez znaczenia. Rozwiązanie takie bardzo dobrze zabezpiecza urządzenie w przypadku zastosowania nieodpowiedniego zasilacza zewnętrznego. 3. Konfiguracja modułu Moduł uruchomieniowy mikrokontrolera MC68HC912B32 może pracować w czterech trybach pracy: • EVB – wykonywany jest program znajdujący się w pamięci Flash EEPROM (program użytkownika, D-Bug12), • skok do EEPROM – wykonywany jest program znajdujący się w pamięci EEPROM, • POD – moduł obsługuje urządzenie zewnętrzne poprzez interfejs BDM, • BOOTLOAD – tryb programowania pamięci Flash EEPROM, EEPROM. Poniżej zamieszczono opis wszystkich zwór modułu konfiguracyjnego Tabela 13: Opis zwór konfiguracyjnych Połączenia Opis J 51 – wybór trybu pracy wyjścia portu szeregowego TxD 1-2 [def.]* RS 232C OUT 2-3 MIDI OUT J 52 – wybór trybu pracy wejścia portu szeregowego RxD 1-2 [def.] RS 232C IN 2-3 MIDI IN J 1 – RESET generowany z powodu niskiego napięcia zasilania 1-2 [def.] włączony przerwa odłączony J 2 – wybór źródła taktującego podawanego na EXTAL mikrokontrolera 1-2 [def.] wewnętrzny (16 MHz) przerwa zewnętrzny J 3 – włączenie napięcia programowania VPP pamięci EEPROM 1-2 [def.] VPP odłączone 2-3 VPP podłączone (programowanie) J 4, J 5 – tryb pracy modułu J 4: 1-2, J 5: 1-2 tryb BOOTLOAD J 4: 1-2, J 5: 2-3 tryb POD J 4: 2-3, J 5: 1-2 tryb skoku do EEPROM J 4: 2-3, J 5: 2-3 [def.] tryb EVB * [def.] – ustawienie domyślne 8 Połączenia Opis J 6, J 7 – tryb pracy mikrokontrolera J 6: 1-2, J 7 1-2 [def.] tryb Single Chip inne połączenia tryby nie zalecane J 8 – podłączenie VCC do BDMOUT 1-2 [def.] VCC podłączone przerwa VCC odłączone J 9 – podłączenie RESET do BDMOUT 1-2 [def.] RESET generowany przerwa RESET odłączony J 10 – wybór napięcia odniesienia VREF dla ADC 1-2, 5-6 [def.] VREF = VCC brak połączeń VREF zewnętrzne 4. Oprogramowanie Do pracy z urządzeniem zalecane jest wykorzystanie istniejącego oprogramowania dla mikrokontrolerów z rodziny MC68HC12, w tym: • D-Bug 12 – rezydentny program monitora i debugera (umieszczany w pamięci Flash EEPROM mikrokontrolera), • asembler dla mikrokontrolerów z rodziny HC12, • pakiet oprogramowania MCUez – zunifikowane środowisko zawierające asembler, kompilator języka C, linker, monitor i debuger. 9 5. Schematy i rysunki Rys. 5.1. Schemat modułu uruchomieniowego. 10 Rys. 5.2. Schemat zasilacza. Rys. 5.3. Schemat interfejsu szeregowego. 11 Rys. 5.4. Rozmieszczenie elementów. 12 6. Literatura • „M68EVB912B32 User Manual”, Motorola Inc. 1997 • „M68HC912B32 Technical Summary”, Motorola Inc. 1997 • „CPU 12 Reference Manual”, Motorola Inc. 1997 • „Systemy Mikroprocesorowe - materały pomocnicze”, M. Wnuk, Wrocław 1999 • „MIDI – muzyczny standard dla komputerów”, W. Nowak, W. Homan, DMM Kraków 1994 Większość informacji dotyczących mikrokontrolerów z rodziny HC12 jest dostępnych na stronie firmy Motorola http://www.mcu.motsps.com. 13