6 na stronę - Stefan Brock
Transkrypt
6 na stronę - Stefan Brock
Literatura Systemy mikroprocesorowe • http:\\www.stefanbrock.neostrada.pl - 1 dzień przed wykładem • Lista wysyłkowa: zapisy e-mail z tematem: AiR-2008 na adres • dr inŜ. Stefan Brock • pok. 627, hala 22B/3 (PP) [email protected] • [email protected] • [email protected] • Podręczniki - zakres techniki mikroprocesorowej • Inne źródła w Internecie - dokumentacja dostępna na : www.8052.com www.analog.com www.keil.com www.infineon.com www.pcguide.com • rozliczenie – dwa kolokwia w trakcie wykładu dr inŜ. Stefan Brock 2008/2009 1 Literatura podręcznikowa 3 • Podstawy informatyki - architektura komputerów, programowanie w C • Podstawy elektroniki, Technika cyfrowa elementy składowe systemów mikroprocesorowych dr inŜ. Stefan Brock 2008/2009 4 Przykłady systemów wbudowanych Pojęcie systemu wbudowanego embedded system • Telefonia komórkowa (aparaty telefoniczne i stacje bazowe) • Motoryzacja - hamulce, kontrola trakcji, poduszki powietrzne, sterowanie silnika, sterowanie steer-by-wire • Gospodarstwo domowe - pralki, zmywarki, kuchenki, telewizja, video, sterowanie bramy, systemy alarmowe • Systemy lotnicze - kontrola lotu, sterowanie silnika, autopilot • Aplikacja która zawiera co najmniej jeden programowalny komputer (mikroprocesor, mikrokontroler, DSP) lecz której głównym zadaniem nie jest wykonywanie zadań obliczeniowych. dr inŜ. Stefan Brock 2008/2009 2 Przedmioty związane • J.W.Coffron - Technika sprzęgania układów w systemach mikroprocesorowych • G.W. Gorsline - Mikrokomputery 16-bitowe • R. Pełka - Mikrokontrolery • T. Starecki - Mikrokontrolery jednoukładowe rodziny 51 • Architektura PC dr inŜ. Stefan Brock 2008/2009 dr inŜ. Stefan Brock 2008/2009 5 dr inŜ. Stefan Brock 2008/2009 6 1 Przykłady systemów wbudowanych Dobór procesora dla systemów wbudowanych • WyposaŜenie medyczne - monitorowanie stanu pacjenta, EKG, MRI, pompy insulinowe, glukometry • Technika wojskowa - systemy radarowe . . . • Klawiatura komputerowa, osprzęt komputerowy • Typowy procesor dla komputera klasy desktop: • Nie zaliczają się do tej kategorii układy klasy PDA - to raczej zminiaturyzowane komputery osobiste dr inŜ. Stefan Brock 2008/2009 7 • Systemy wbudowane mają inne wymagania – – – – kosztuje około 100-500 $, wymaga układów otoczenia (chipset, pamięć) pobiera sporo prądu (100 W - chłodzenie !!!) zapewnia duŜą moc obliczeniową (n.p. Pentium-4 2 GHZ: obliczenia zmiennoprzecinkowe 500 MFLOPS) dr inŜ. Stefan Brock 2008/2009 8 Co to jest 8051 Główne zagadnienia • Architektura systemów z mikrokontrolerami - rodzina 51 • Komunikacja w systemach mikroprocesorowych • Architektura innych systemów • Wybrane zagadnienia zaawansowane procesory sygnałowe dr inŜ. Stefan Brock 2008/2009 9 Rodzina mikrokontrolerów 8051 • Jeden z najstarszych (Intel MCS-51 w 1981) i prawdopodobnie najpopularniejszy mikrokontroler. Wiele pochodnych jest produkowanych przez szereg wytwórców • Te same narzędzia programistyczne • Wspólny rdzeń i dodatkowe peryferia zaleŜne od wytwórcy. dr inŜ. Stefan Brock 2008/2009 11 dr inŜ. Stefan Brock 2008/2009 10 Cechy wspólne rodziny 51 • – 8-bit procesor • – 4 I/O port kaŜdy o szerokości 8 bitów • – max 64K on-chip ROM (zwykle 0 K to 4k) • – max 64K zewnętrznej pamięci danych • – max 64K zewnętrznej pamięci programu • – 2 timery, 1 port szeregowy • – 128 bajty on-chip RAM • – róŜne prędkości od 12 MHz dr inŜ. Stefan Brock 2008/2009 12 2 Architektura ‘51 Przedstawiciele rodziny 51 • 8031 – bez pamięci ROM • 8751 – z on-chip EPROM • 8052 – 8051 z 128 B dodatkowo IRAM, dodatkowy 16 bitowy timer • Atmel AT89C51 – z pamięcią Flash ROM • Dallas Semiconductor DS5000 On-chip NV-RAM i programowanie w systemie przez łącze szeregowe • Philips Corp. • Analog Device - MicroConverter uC-812 - b.dobre przetworniki A/C • rdzeń 8051 wytwórców FPGA – Xilinx, Altera 13 dr inŜ. Stefan Brock 2008/2009 dr inŜ. Stefan Brock 2008/2009 14 Wyprowadzenia 8051• dr inŜ. Stefan Brock 2008/2009 15 Zasilanie - Vcc, Vss • Reset - RST • Zegar - XTAL[1,2] • Porty I/O – P0[7;0], P1[7:0], P2[7:0], • P3 jest współdzielony z liniami sterowania: • Szeregowe I/O RxD, TxD, • zewnętrzne przerwania INT0, INT1 • Sterowanie timerami dr inŜ. Stefan Brock 2008/2009 16 T0, T1 Wyprowadzenia 8051• Do układów zewnętrz. • EA - External Access (L dla pamięci zewn.) • ALE - Address Latch Enable • PSEN – Program Store Enable • WR – Write Enable • RD – Read Enable • P0 i P2 słuŜą jako zewnętrzne magistrale adresowa i danych, multipleksowane dr inŜ. Stefan Brock 2008/2009 17 • A[15:8] AD[7:0] dr inŜ. Stefan Brock 2008/2009 18 3 Minimalna aplikacja z 8051 dr inŜ. Stefan Brock 2008/2009 Zegar systemowy 8051 Procesor Atmel 2051 - tylko 20 pin 19 • 8051 ma wbudowany układ oscylatora • Wymagany jest zewnętrzny rezonator kwarcowy, decydujący o szybkości pracy • Standardowe połączenie dr inŜ. Stefan Brock 2008/2009 21 8 bitowa szyna danych i 16 bitowa szyna adresowa 16 dr inŜ. Stefan Brock 2008/2009 23 dr inŜ. Stefan Brock 2008/2009 Reset 8051 • RESET jest aktywny w stanie High • W tym czasie procesor przechodzi w stan jak po załączeniu zasilania • RST musi być utrzymany przez minimum 2 cykle maszynowe dr inŜ. Stefan Brock 2008/2009 Demultipleksacja magistrali adresowej 20 22 • ALE – Address Latch Enable • HIGH gdy adres na AD[7,0] • ALE jest sygnałem wyzwolenia dla przerzutnika typu latch (74LS573 lub 373) • P0 i P2 są w tym układzie niedostępne dr inŜ. Stefan Brock 2008/2009 24 4 Cyfrowe porty wejścia/wyjścia Porty I/O • Porty mogą być wykorzystywane jako wejścia lub wyjścia • Funkcja wyjścia - napięcie wzg. masy wynosi 0 V lub 5 V (3V dla systemów o zasilaniu 3V) • KaŜde z wejść moŜe przesyłać prąd do 10 mA • Typowo jest ograniczony prąd całego procesora - zwykle max 70 mA dr inŜ. Stefan Brock 2008/2009 25 27 Wyświetlacz 7 segmentowy dr inŜ. Stefan Brock 2008/2009 26 Buforowanie wyjść Podłączenie diody LED dr inŜ. Stefan Brock 2008/2009 dr inŜ. Stefan Brock 2008/2009 dr inŜ. Stefan Brock 2008/2009 28 Odczyt wejść binarnych 29 dr inŜ. Stefan Brock 2008/2009 30 5 Odczyt wejść Wybór języka programowania • KaŜdy procesor interpretuje wyłącznie kod maszynowy - ciąg liczb binarnych, nieczytelny dla człowieka • KaŜdy inny program - asembler, C, Pascal, Ada, Java - musi zostać przetłumaczony do postaci kodu maszynowego • Aby programować systemy wbudowane potrzebne są instrukcje bezpośredniego dostępu do elementów sprzętowych. dr inŜ. Stefan Brock 2008/2009 31 Wybór języka programowania dr inŜ. Stefan Brock 2008/2009 32 Klasyfikacja języków programowania • Konieczne jest, aby dla nowych projektów wykorzystywać elementy oprogramowania juŜ opracowane wcześniej - tworzenie bibliotek funkcji. • Wybrany język powinien ułatwiać przejście pomiędzy róŜnymi platformami sprzętowymi. • Dobry wybór - język C dr inŜ. Stefan Brock 2008/2009 33 Zalety C 34 Struktura programu dla mikrokontrolera • Posiada zalety ‘wysokiego poziomu’ - struktury, funkcje i ‘niskiego poziomu’ - dostęp do sprzętu • Jest bardzo efektywne • Jest popularny, dobrze udokumentowany • Kompilatory dostępne dla wszystkich platform od 8 bitowych do 64 bitowych dr inŜ. Stefan Brock 2008/2009 dr inŜ. Stefan Brock 2008/2009 35 Część inicjująca Wykonuje się jeden raz Część wykonawcza W pętli nieskończonej dr inŜ. Stefan Brock 2008/2009 36 6 Architektura programu „super loop” - pętla bez końca dr inŜ. Stefan Brock 2008/2009 Przykład - regulacja temperatury 37 Przykład - regulacja temperatury dr inŜ. Stefan Brock 2008/2009 38 Programowanie portów procesora • Dostęp do poszczególnych zasobów procesora poprzez SFR - specjalne rejestry funkcyjne • Porty wejścia/ wyjścia – – – – P0 P1 P2 P3 • Są to konkretne adresy w pamięci wewnętrznej procesora dr inŜ. Stefan Brock 2008/2009 39 dr inŜ. Stefan Brock 2008/2009 40 Przykład - kopiowanie wartości Zapis i odczyt wartości bajtu śeby odczytać wartość z portu naleŜy najpierw wpisać do niego 1 dr inŜ. Stefan Brock 2008/2009 41 dr inŜ. Stefan Brock 2008/2009 42 7