Mikrokontrolery i Mikrosystemy

Wielkość: px
Rozpocząć pokaz od strony:

Download "Mikrokontrolery i Mikrosystemy"

Transkrypt

1 Wykład Mikrokontrolery i Mikrosystemy autor: dr inż. Zbigniew Czaja Gdańsk 2005

2 2 Spis treści 1. Wprowadzenie Mikrokontrolery Jednostka centralna Architektury procesorów rdzeniowych mk Pamięci Struktury mikrokontrolerów Elementy składowe procesora rdzeniowego Oscylator i dystrybucja sygnałów zegarowych Techniki redukcji mocy i tryby specjalne mk Reset mk Układy nadzorujące - układ watchdog System przerwań Porty równoległe mk - warstwa multiplekserów i zacisków we/wy Wewnętrzne urządzenia peryferyjne mk Układy licznikowe/czasowe Przetworniki analogowo-cyfrowe (A/C) Komparatory analogowe Wewnętrzna pamięć EEPROM Sterowniki komunikacji szeregowej Interfejs UART Interfejs SPI Interfejs 1-Wire Interfejs I2C Interfejs CAN Interfejs USB Interfejs równoległy typu paraller slave port Typy obudów mk Programowanie mk Programowanie w języku asemblera Programowanie w językach wyższego poziomu Uruchamianie programu mk... 77

3 Sposoby programowania mk z pamiecią FLASH Tryb programowania równoległego Tryb programowania szeregowego (ISP) Rodziny mk Układy scalone pamięciowe bitowy rejestr zatrzaskujący 74HC Pamięć SRAM 128kB Pamięć FLASH 128kB Programowalne układy logiczne Układy logiczne SPLD na przykładzie układu GAL16V Układy logiczne CPLD na przykładzie rodziny układów XC9500 firmy Xilinx Układy peryferyjne z interfejsem szeregowym standardu SPI Szeregowe pamięci EEPROM Szeregowe pamięci EEPROM z interfejsem SPI Szeregowe pamięci EEPROM z interfejsem Microwire Zewnętrzne przetworniki analogowo-cyfrowe (A/C) Zewnętrzny przetwornik A/C pracujący na zasadzie SAR Zewnętrzny przetwornik A/C typu signa-delta Zewnętrzne przetworniki cyfrowo- analogowe (C/A) Pojedynczy przetwornik C/A Wielokanałowy przetwornik C/A Cyfrowe potencjometry sterowane interfejsem SPI Programowalne generatory sterowane interfejsem SPI Programowalne czujniki temperatury z interfejsem SPI Klucze analogowe sterowane interfejsem SPI Układy z kluczami PSPT Układy z matrycami przełączającymi Bibliografia Literatura podstawowa Dokumentacja w postaci plików PDF

4 4 1. Wprowadzenie Rys Przykładowy schemat blokowy mikrosystemu elektronicznego Sercem mikrosystemu elektronicznego (w skrócie: mse) (rys. 1.1) jest mikrokontroler nadzorujący pracą wszystkich układów wchodzących w jego skład. Mikrokontroler steruje pracą mse za pośrednictwem magistral równoległych oraz interfejsów (mikrointerfejsów) szeregowych. Niektóre wersje mikrokontrolerów potrzebują do pracy zewnętrznych pamięci RAM i ROM (np. typu FLASH), stąd zostały one pokazane na schemacie blokowym. W skład mse mogą również wchodzić: logika programowalna (SPLD, CPLD lub FPGA), układy peryferyjne (przetworniki A/C, C/A, pamięci szeregowe EEPROM, itd.), wśród których można wyróżnić układy dopasowujące sygnały elektryczne do danego standardu interfejsu (np. MAX232AC) i kontrolery interfejsów szeregowych (np. Ethernetu, CAN, USB, IrDA), jak i równoległych. Komunikacja wewnątrz mse odbywa się za pomocą magistral równoległych lub mikrointerfejsów szeregowych. Mse komunikuje się z otoczeniem przeważnie za pomocą interfejsów szeregowych. W skrajnym przypadku mse może składać się wyłącznie z mikrokontrolera (w skrócie: mk). Podsumowując można wymienić następujące składowe mikrosystemu: mikrokontroler(y) najważniejszy element mse, pamięć RAM opcjonalnie w zależności od typu mk, pamięć ROM opcjonalnie w zależności od typu mk, logika programowalna zastępująca konwencjonalne układy TTL, układy peryferyjne z mikrointerfejsem szeregowym (w skrócie: mis) np. przetworniki A/C, C/A, EEPROM, układy peryferyjne z interfejsem równoległym, układy dopasowujące i kontrolery interfejsów szeregowych RS232, RS485, Ethernet, CAN, USB i bezprzewodowych IrDA, Bluetooth, Wi-Fi, Zig Bee.

5 5 magistrale równoległe równoległe porty we/wy, opcjonalnie magistrale danych i adresowe, mikrointerfejsy szeregowe SPI, I2C, CAN, UART, ISP, JTAG, 1-wire. Mse można zdefiniować następująco: Mikrosystem elektroniczny zestaw układów elektronicznych stanowiących funkcjonalną, integralną część urządzenia lub samo urządzenie, które mogą komunikować się między sobą za pomocą dedykowanych mis. Przeważnie komunikacja mse z otoczeniem odbywa się również za pomocą dedykowanych interfejsów szeregowych przewodowych, jak również bezprzewodowych radiowych i na podczerwień. W mse możemy wyróżnić dwie warstwy sprzętową i programową. Pierwszą warstwę stanowi sprzęt, tj. płytka drukowana (printed board) z umieszczonymi na niej układami scalonymi. Drugą warstwą jest oprogramowanie dla mk realizujące zadane przez nas algorytmy, zapisane w pamięci FLASH ROM mk lub zewnętrznej pamięci ROM oraz zapis konfiguracji połączeń i realizowanych funkcji w programowalnych układach logicznych (PLD). Mse sterowane mk, bądź procesorami sygnałowymi, mogą być częścią większego urządzenia, np.: są zrealizowane w postaci karty komputerowej lub pakietu montowanego do danego urządzenia lub mogą być samodzielnym urządzeniem np.: telefon komórkowy, inteligentny czujnik. Stąd nazywa się je wbudowanymi systemami elektronicznymi. Gdyż, zgodnie z definicją system wbudowany jest to jakikolwiek produkt elektroniczny zawierający procesor lub procesory, nie dający się zakwalifikować jako komputer biurowy (ogólnego przeznaczenia). Uwzględniając najistotniejsze właściwości i cechy systemów wbudowanych można powiedzieć, że system wbudowany: to mikrokomputer (lub urządzenie), będący częścią jakiegoś większego systemu macierzystego (wbudowany w niego) w celach innych niż dostarczanie obliczeń i działań o ogólnym zastosowaniu, posiada typowo dedykowane oprogramowanie, często bez klawiatury, wyświetlacza, monitora. Typowy system wbudowany składa się z procesora (mikrokontrolera), odpowiednich urządzeń wejścia /wyjścia, pamięci ROM, RAM i oprogramowania. Oczywiście system może być tak rozbudowany, ze będzie potrzebował kilku procesorów na jednej lub kilku płytach głównych, służy do wykonywania zaimplementowanych w niego funkcji takich jak, np. sterowanie ABS (Anti-lock Braking System) i ESP (Electronic Stability Program) w samochodzie, sterowanie linią produkcyjna, trajektorią lotu pocisku, kompresją i dekompresja dźwięku, obrazu i danych w systemach multimedialnych, itd., zwykle ma pracować przez cały czas życia systemu macierzystego, w którym jest on wbudowany; może to być parę lat (nieskomplikowany podzespół dźwiękowy), lub całe dekady (np. system sterowania lotem), nieraz zdarza się tak, ze system jest niszczony po wykonaniu zadania (system wbudowany w pocisk Cruise jest niszczony wraz z detonacja ładunku), musi nadążać za wymaganiami czasowymi dyktowanymi przez środowisko zdefiniowane przez system macierzysty. Wymagania te określają maksymalny czas reakcji na zaistniałe w systemie zdarzenie oraz mogą dotyczyć np. zapewnienia minimalnej częstotliwości próbkowania. Systemy spełniające powyższe wymagania określane są jako systemy czasu rzeczywistego. Można stwierdzić, że prawie wszystkie systemy wbudowane są systemami czasu rzeczywistego.

6 6 2. Mikrokontrolery Najważniejszym elementem mse jest mikrokontroler (mk). Jak wspomniano we wstępie, w skrajnym przypadku mse może składać się wyłącznie z mk. Mk można zdefiniować następująco: Jest to układ cyfrowy z wyspecjalizowanym mikroprocesorem i niezbędnymi urządzeniami zawartymi w jednym układzie scalonym, czyniącymi go układem autonomicznym (do pracy nie są wymagane urządzenia zewnętrzne, takie jak np. kontrolery magistral, przerwań, generatory sygnałów taktujących mikroprocesor, itp.). Zatem: jest zdolny do autonomicznej pracy, tzn. w najprostszych zastosowaniach nie wymaga przyłączenia zewnętrznych układów pomocniczych (peryferyjnych), został zaprojektowany do pracy w systemach kontrolno-pomiarowych oraz komunikacyjnych, stąd posiada rozbudowany system komunikacji z otoczeniem, z reguły pracuje w czasie rzeczywistym. Rys Uproszczona budowa mk Na rys pokazano uproszczoną budowę mk. Widać z niego, że mk jest układem scalonym, w którego strukturze zintegrowane są wszystkie elementy kompletnego komputera: jednostka centralna, pamięci oraz urządzenia peryferyjne. Mk komunikuje się z otoczeniem za pośrednictwem wewnętrznych urządzeń peryferyjnych. Jedną z najważniejszych cech jednostki centralnej mk jest szerokość szyny danych. Może być ona 8-bitowa, 16-bitowa lub 32-bitowa. Na podstawie tej szerokości określa się typ mk, np. mk 8-bitowy. Kolejną cechą jest częstotliwość sygnału taktującego (zegarowego). Mk ukierunkowane są na zastosowania w układach kontrolno pomiarowych i komunikacyjnych. W wielu tego typu zastosowaniach daje się określić wymaganą minimalną prędkość przetwarzania danych przez jednostkę centralną. Nie obowiązuje przy tym zasada wzięta z mikroprocesorów, że im większa prędkość przetwarzania danych tym lepiej. Ze wzrostem częstotliwości sygnału zegarowego rośnie pobór mocy, co jest niekorzystne między innymi w systemach bateryjnych. Ponadto, najistotniejszym w mse jest czas reakcji mk na sygnały zewnętrzne. Zatem mk mają rozbudowane układy przerwań. Dodatkowo w wielu przypadkach zadania, które wykonuje

7 7 mk stosowany w układach sterowania, są zazwyczaj niezbyt złożone pod względem obliczeniowym. Rys Budowa mk Na rys przedstawiono uszczegółowioną budowę mk. Jednostka centralna realizuje program zawarty w pamięci programu (ROM lub FLASH). Zmienne programu przechowywane są w pamięci danych RAM. Jednostka centralna jest taktowana zegarem (clock), którego częstotliwość jest stabilizowana oscylatorem kwarcowym. W stan początkowy mk wprowadzany jest sygnałem RESET. Układy peryferyjne umożliwiają odczyt sygnałów wejściowych cyfrowych, jak i również analogowych (przetworniki A/C) oraz generację sygnałów wyjściowych stosowanych do sterowania układami mse. Mk posiada następujące cechy: 1. zamknięcie magistrali danych i adresowej wewnątrz układu scalonego, 2. stała struktura pamięci ROM/RAM, 3. stałość programu sterującego, 4. dostęp do rejestrów procesora i układów we/wy poprzez mechanizm adresowania pamięci RAM (memory mapped registers and I/O), 5. rejestrowa struktura jednostki centralnej, 6. procesory boolowskie wykonujące operacje na pojedynczych bitach w pamięci, rejestrach i układach we/wy, 7. bogaty zestaw urządzeń we/wy, 8. rozbudowane i szybkie układy przerwań, 9. różnorodne tryby i środki redukcji mocy pobieranej, 10. rozbudowane mechanizmy kontroli i detekcji nieprawidłowych stanów mk, 11. zawarcie w jednej strukturze układów cyfrowych (sterujących) i analogowych (pomiarowych). Trzy pierwsze cechy dotyczą mk zamkniętych, które będą omówione dalej.

8 Jednostka centralna Najważniejszą częścią mk jest jednostka centralna (w skrócie jc). Często określa się ją jako procesor rdzeniowy lub w skrócie procesor. Posiada ona właściwości: należy do grupy układów cyfrowych, określanych jako układy synchroniczne i sekwencyjne, synchroniczność oznacza, że wszystkie operacje wykonywane przez jc odbywają się w rytm sygnału zegarowego, sekwencyjność oznacza, że stan wyjść jc zależy nie tylko od stanu jej wejść, ale i od poprzednich stanów tego układu, posiada własną pamięć (rejestry) potrzebną np. do przechowywania argumentów rozkazów niezbędnych do wykonania na nich określonej operacji. Działanie jc polega na cyklicznym wykonaniu instrukcji zawartych w programie użytkownika przechowywanym w pamięci programu mk. Lista instrukcji jest z góry określona dla danego mk. Zakłada się, że instrukcja składa się z kodu operacji nazywanego kodem rozkazowym lub w skrócie rozkazem i argumentu lub argumentów. Cykl wykonania instrukcji rozpoczyna się zawsze od wczytania do wewnętrznych rejestrów jc kolejnego rozkazu. Gdy niezbędne do wykonania operacji są argumenty, to zawarte są one lub informacja o ich miejscu przechowywania w dalszej części instrukcji. W kolejnej fazie następuje pobranie tych argumentów i umieszczenie ich w odpowiednich wewnętrznych rejestrach jc. Po tym następuje wykonanie instrukcji. Jednocześnie jest inkrementowany licznik rozkazów wskazujący adres spod którego pobierane są instrukcje. Sposób dostępu jc do argumentów zależy od trybu adresowania. Przez tryb adresowania rozumie się sposób wskazywania na argumenty wykorzystywane w trakcie wykonania instrukcji. Do najważniejszych trybów adresowania można zaliczyć: implikowane, zwane też wewnętrznym lub rejestrowym (inherent, register), natychmiastowe (immediate), bezpośrednie (direct), indeksowe (indirect), względne (relative). Adresowanie implikowane dotyczy jednobajtowych instrukcji, dla których zarówno operand jak i miejsce przeznaczenia wyniku są określone przez słowo rozkazowe. Tryb ten używany jest wyłącznie w odniesieniu do wewnętrznych rejestrów jc, w tym przede wszystkim do akumulatora. Np. ADD A,R1, INC A, CPL A, NOP. Adresowanie natychmiastowe operand (argument) jest podany w jawnej postaci w kodzie instrukcji. Tryb ten może być używany wyłącznie w odniesieniu do stałych zapisanych w kodzie programu. Np. ADD A,#dana, MOV A,#0F3h. Adresowanie bezpośrednie odnosi się do instrukcji wielobajtowych, w których po kodzie rozkazu następuje adres argumentu umieszczonego w pamięci danych (komórki pamięci RAM). Np. ADD A,adres, MOV A,0F8h. Adresowanie indeksowe polega na obliczeniu adresu przez sumowanie zawartości specjalnie przeznaczonego do indeksowania rejestru, nazywanego rejestrem indeksowym, z adresem bezpośrednim, zapisanym w instrukcji (lub odwrotnie wówczas mówi się o adresowaniu bazowym). Obliczony w ten sposób adres fizyczny pamięci bywa nazywany adresem efektywnym (rys. 2.3). Adresowanie to jest szczególnie użyteczne przy operowaniu na blokach danych. Umieszczając w instrukcji adres początku bloku danych można uzyskać wygodny dostęp do kolejnych bajtów danych przez tylko samą zmianę zawartości rejestru indeksowego.

9 9 Rys Adresowanie indeksowe Adresowanie pośrednie ma miejsce, gdy część adresowa instrukcji wskazuje na komórkę pamięci zawierającą adres efektywny. Odmianą tego adresowania jest adresowanie zawartością rejestrów (pointer addressing), w którym adres efektywny jest zawarty w przeznaczonym do tego celu rejestrze lub parze rejestrów mk. W tym przypadku identyfikacja tych rejestrów odbywa się na podstawie słowa rozkazowego. Np. MOV ADD A,@R0, MOVX Adresowanie względne służy do adresowania pamięci względem adresu aktualnie wykonywanej instrukcji w pamięci programu. Adres ten jest przechowywany w specjalnie do tego celu przeznaczonym rejestrze, nazywanym licznikiem programu PC (program counter), licznikiem rozkazów lub wskaźnikiem instrukcji IP (instruction pointer). Adres efektywny jest obliczany jako suma zawartości licznika programu i adresu względnego, gdzie adres względny (relative address), będący argumentem instrukcji, np. zawarty jest w zakresie [-128,+127]. Np. JNB adresbitu,etykieta - JNB P0.1,LOOP Architektury procesorów rdzeniowych mk Architektury procesorów rdzeniowych można sklasyfikować według typu mapy pamięci oraz według typu listy instrukcji. Mapa pamięci (memory map) w sposób graficzny przedstawia rozmieszczenie poszczególnych pamięci w przestrzeni adresowej jc. Oprócz adresów obszarów RAM, ROM i innych rodzajów pamięci, mapa ta podaje usytuowanie rejestrów uniwersalnych, adresów procedur obsługi przerwań, rejestrów układów we/wy (dostępne przez adresowanie pamięci RAM). W zależności od typu struktury mapy pamięci, procesory rdzeniowe mogą mieć następującą architekturę: architekturę harwardzką, zmodyfikowaną architekturę harwardzką, architekturę Von-Neumanna. Architektura harwardzka opiera się na użyciu dwóch oddzielnych szyn dla danych i rozkazów, dzięki czemu w trakcie pobierania argumentów wykonywanej właśnie instrukcji można równocześnie zacząć pobieranie następnego słowa rozkazowego (pre-fetch). Skraca to

10 10 cykl rozkazowy i zwiększa szybkość pracy. Obszary adresowe pamięci danych i programu (wewnętrznych i czasami zewnętrznych) są rozdzielone. Pociąga to za sobą niejednoznaczność adresów, ponieważ pod tym samym adresem jc widzi pamięć RAM i ROM (rys. 2.4). W tym przypadku stosuje się inne rozkazy dla pamięci programu i inne dla pamięci danych. Ponadto magistrala danych i rozkazów mają różną szerokość (długość słowa), np. PIC16F87x magistrala danych 8-bitowa, magistrala rozkazów 14-bitowa (rys. 2.5). Rys Mapa pamięci dla architektury harwardzkiej Wadą tego rozwiązania jest utrudniony przepływ danych z pamięci programu do obszaru pamięci operacyjnej, co uniemożliwia stosowanie jednej z podstawowych technik programistycznych (look-up tables). Innymi słowy nie jest możliwe indeksowane przesłanie danych z pamięci ROM do RAM, co oznacza np. brak możliwości budowy tabel współczynników stałych w pamięci ROM. Jedynym sposobem wbudowania stałych w program jest ukrycie ich w kodach rozkazów. Np. ADDLW k, MOVLW k, Rys Schemat blokowy mk PIC16F873/6 firmy Microchip

11 11 Zmodyfikowana architektura harwardzka jest rozwiązaniem pośrednim, starającym się połączyć zalety architektury harwardzkiej i Von-Neumanna. Obszary pamięci ROM i RAM są rozdzielone, ale charakteryzują się taką samą długością słowa. Dzięki multiplekserom MUX i odpowiedniej organizacji magistrali pamięci ROM i RAM możliwe jest z pewnymi ograniczeniami przesyłanie stałych z pamięci ROM do rejestrów i pamięci RAM. Jedynym rejestrem niewidocznym jako komórka pamięci RAM jest rejestr akumulatora A. Np. dla mk COP880 (rys. 2.6): LAID ; ładuj A zawartością ROM (PU,A) Rys Schemat blokowy mk COP880 firmy National Semiconductor Możliwe jest przesłanie stałej zapisanej w obszarze kodu do obszaru danych tylko w granicach bieżącej strony pamięci ROM określonej przez starszą część licznika rozkazów PU. Pierwotna zawartość akumulatora, służy jako indeks. Dodatkowo procesor wyposażono w możliwość budowy stałych tablic wektorów w pamięci ROM. Właściwość ta pozwala na budowę szybkich algorytmów dekodowania złożonych struktur danych. Oparta jest ona na skoku pośrednim, w którym zawartość akumulatora modyfikuje wartość finalną adresu w pamięci ROM. Działanie tego mechanizmu ograniczone jest do 1 strony ROM (256 bajtów): JID ; skocz do adresu A na stronie PU. Architektura Von-Neumanna cechuje się jednolitą przestrzenią adresową, w której wszystkie pamięci, rejestry i układy we/wy są umieszczone w jednej, wspólnej przestrzeni adresowej. W architekturze tej zakłada się, że podział przestrzeni adresowej na pamięć programu, pamięć danych oraz obszar we/wy jest czysto umowny i zależy wyłącznie od rozmieszczenia tych elementów w obszarze adresowym podczas projektowania systemu. Mk ma jedną szynę danych wspólną dla danych i programu (rys. 2.7). Dzięki temu programowanie jest ułatwione, gdyż dostęp do danych, programu i urządzeń we/wy odbywa się przy użyciu zunifikowanych rozkazów wykorzystujących te same tryby adresowania. Zatem nie istnieje tu potrzeba wprowadzania specjalnych rozkazów pozwalających na przepływ danych pomiędzy pamięcią ROM i RAM. Do tego celu może być

12 12 użyty typowy rozkaz adresowy. Tym samym tworzenie tablic stałych, tablicy wektorów, itp. w pamięci ROM nie stanowi problemu. Np.: Rys Mapa pamięci mk ST72215G firmy STMicroelectronics Kolejny podział architektur procesorów mk można uzyskać korzystając z kryterium typu listy instrukcji. Pozwala ono na wyróżnienie procesorów o: architekturze RISC (reduced instruction set computer), architekturze CISC (complex instruction set computer). Architektura RISC, czyli o zredukowanej liście instrukcji, odznacza się następującymi cechami: procesor jest zbudowany zgodnie z architekturą harwardzką, procesor wykorzystuje przetwarzanie potokowe (pipeling) w celu zwiększenia szybkości wykonywania programu, zbiór realizowanych instrukcji jest ograniczony i spełnia warunki ortogonalności (symetrii). W przetwarzaniu potokowym jc dysponuje pobranymi na zapas instrukcjami, które będą kierowane do współbieżnego wykonania w jej poszczególnych jednostkach wykonawczych. W procesorze tego typu zamiast prostego rejestru instrukcji stosuje się pamięć FIFO (first-in first-out), która gromadzi kolejkę instrukcji. Instrukcje pobierane z pamięci programu do kolejki w cyklu pre-fetch opuszczają ją w takiej samej kolejności i są kierowane do poszczególnych układów wykonawczych. Pojęcie ortogonalności oznacza unifikację instrukcji według następujących zasad: każda instrukcja może operować na dowolnym rejestrze roboczym. Procesor nie ma więc wyróżnionych rejestrów, które są specjalizowane do wykonywania określonych rodzajów operacji, każda instrukcja może wykorzystywać dowolny tryb adresowania argumentów,

13 13 nie ma ukrytych związków między instrukcjami (efektów ubocznych), które powodowałyby nieprzewidziane reakcje systemu w zależności od kontekstu użycia rozkazów w programie, kody rozkazów i formaty instrukcji są zunifikowane. W szczególności wszystkie instrukcje zajmują w pamięci programu taką samą liczbę bajtów. Ortogonalność zbioru instrukcji radykalnie upraszcza budowę układu sterowania, który może realizować cykl wykonania każdego rozkazu według identycznego algorytmu. Stąd prostszy układ sterowania może pracować znacznie szybciej, dlatego cykl rozkazowy ulega skróceniu. Np. mk AT90S8515 firmy Atmel (rys. 2.8). Rys Schemat blokowy procesora rdzeniowego mk AT90S8515 firmy Atmel Klasyczna architektura RISC jest stosowana w mk rzadko. Najczęściej można znaleźć elementy tej architektury, ale ortogonalność instrukcji nie jest pełna. Architektura CISC charakteryzuje się rozbudowaną liczbą instrukcji (często powyżej 100). Przeciwstawia się ją architekturze RISC. Cecha ortogonalności nie jest zachowana. Instrukcje są wąsko specjalizowane, współpracują na ogół tylko z określonymi rejestrami i wymagają stosowania określonych trybów adresowania.

14 Pamięci W mk można wyróżnić następujące typy pamięci: pamięć programu (zawierająca kod programu, tablice stałych, wektor resetu i przerwań), pamięć danych (przechowująca zmienne), stos sprzętowy (obsługi przerwań i wywołań funkcji odkładają na niego bieżącą wartość licznika rozkazów i po zakończeniu działania zdejmują ją), pamięć EEPROM (przechowuje zmienne lub tablice stałych, które po wyłączeniu zasilania nie mogą ulec skasowaniu). Pamięć programu jest wykonana w technologii ROM, EPROM, OTP lub FLASH. Natomiast pamięć danych najczęściej jest typu SRAM. Przegląd podstawowych typów pamięci zestawiono w tabeli 2.1. Tabela 2.1. Przegląd podstawowych układów pamięci Własności pamięci Stosowane typy pamięci Zawartość pamięci nie zanika wraz z ROM (Read Only Memory) wyłączeniem napięcia zasilania. programowanie zawartości pamięci następuje w procesie produkcyjnym i nie może być Z pamięci można czytać, lecz nie można do przeprowadzone przez użytkownika. niej wpisywać danych. Umieszczanie EPROM (Erasable Programmable ROM) danych w pamięci wymaga specjalnego pamięci z możliwością kasowanie procesu, zwanego programowaniem. dotychczasowej zawartości promieniami ultrafioletowymi i prowadzania nowej zawartości za pomocą zewnętrznego programatora. Umieszczane są w obudowach z okienkiem kwarcowym w celu umożliwienia kasowania. OTP (One Time Programmable) pamięci typu EPROM umieszczane w obudowach bez okienka kwarcowego. Dlatego możliwe jest tylko jednokrotne zaprogramowanie pamięci bez możliwości skasowanie jej zawartości. FLASH (Bulk Erasable Non-Volatile Memory) pamięci z możliwością kasowanie zawartości i programowania bezpośrednio w systemie mikroprocesorowym. Zawartość pamięci zanika wraz z SRAM (Static Random Access Memory) wyłączeniem napięcia zasilania. pamięci RAM statyczne. Są to pamięci o krótkich czasach dostępu, prostsze w obsłudze Z pamięci można zarówno czytać, jak i przez jednostkę centralną, ale droższe. wpisywać do niej dane. DRAM (Dynamic Random Access Memory) pamięci RAM dynamiczne. Są to pamięci tańsze, ale ich obsługa przez jednostkę centralną jest bardziej skomplikowana. Polega to na konieczności wykonywania w krótkich odstępach czasu określonych operacji na pamięci (tzw. odświeżaniu). W przeciwnym razie dane zawarte w pamięci dynamicznej zanikają Struktury mikrokontrolerów

15 15 Zgodnie z definicją mk, w jego strukturze zawarte są zarówno układy peryferyjne, jak i układy pamięci. Jednak w praktyce czasami zachodzi potrzeba wykorzystania zarówno pamięci zewnętrznej, jak i zewnętrznych układów peryferyjnych. Stąd niektóre mk umożliwiają przyłączenie zewnętrznych pamięci programu i danych. Ze względu na sposób korzystania z zewnętrznych pamięci możemy wyróżnić: mk udostępniające szyny systemowe (szyna danych, adresowa i sterująca) poprzez wyprowadzenia portów, mk udostępniające bezpośrednio szyny systemowe, mk zamknięte (embedded). Mk udostępniające szyny systemowe poprzez wyprowadzenia portów w tej strukturze systemu szyny systemowe są dostępne dla użytkownika jako alternatywne funkcje wyprowadzeń portów. Mk daje zatem możliwość podłączenia układów pamięci zewnętrznej, którą podłącza się do odpowiednich portów mk. Wadą tego rozwiązania jest rezygnacja z części portów. Np. na rys. 2.9 widać, iż należy skorzystać z portów P0 i P2 oraz części wyprowadzeń portu P3. Zatem nie można korzystać z linii tych portów jako we/wy sygnałów sterujących. Rys Budowa mse z mk udostępniającym szyny systemowe jako alternatywne wyprowadzenia portów, na przykładzie mk 8031 Mk udostępniające bezpośrednio szyny systemowe w tej strukturze szyny systemowe mk są dostępne dla użytkownika bezpośrednio jako wyprowadzenia układu scalonego bez funkcji alternatywnych przypisanych tym wyprowadzeniom. Mk daje zatem możliwość przyłączenia układów pamięci zewnętrznych, bez potrzeby rezygnacji z niektórych portów

16 16 mk. Najczęściej mk te nie posiadają wewnętrznych pamięci programu i danych. Np. mk Rabbit 2000 (rys. 2.10). Rys Budowa mse z mk udostępniającym szyny systemowe bezpośrednio na wyprowadzeniach układu scalonego Podejście takie umożliwia korzystanie ze znacznie większych pamięci. Stąd tego typu struktura jest stosowana przeważnie dla mk 16 i 32-bitowych. Np. mk Rabbit 2000 pozwala na zaadresowanie 1MB pamięci. Sposób mapowa i przyporządkowanie funkcji poszczególnym obszarom pamięci pokazano na rys Rys Sposób mapowania pamięci dla mk Rabbit 2000 Mk zamknięte w tej strukturze systemu szyny systemowe nie są w ogóle dostępne dla użytkownika. Mk korzysta wyłącznie z wewnętrznej pamięci. Oczywiście można do niego podłączać zewnętrzne urządzenia peryferyjne poprzez jego porty. Tego typu struktura jest stosowana w przypadku prostych mk 8-bitowych (które są głównym tematem wykładu). Na rys pokazano schemat takiego mk (mk ST72215G firmy STMicroelectronics).

17 17 Rys Budowa mse z mk nie udostępniającym szyn systemowych zamkniętym, na przykładzie mk ST72215G Jakkolwiek brak dostępu do magistrali może być postrzegany jako wada, jednak po dokładnej analizie można stwierdzić, że rozwiązanie takie ma następujące zalety: 1. Zwiększenie niezawodności mikrosterownika. Magistrala jest jednym z najczulszych na zakłócenia systemem interfejsowym. Zamknięcie magistrali wewnątrz układu scalonego, odseparowanie jej od zacisków we-wy powoduje znaczący wzrost niezawodności systemu. Jądro systemu w postaci procesora rdzeniowego uzyskało w ten sposób bardzo dobrą izolację od pozostałej części systemu. Nastąpiło zmniejszenie i ograniczenie długości magistrali co ma znaczenie ze względu na rosnące wymagania na kompatybilność elektromagnetyczną układu. 2. Zmniejszenie poboru mocy. Magistrala uniwersalna jest jednym z najbardziej energochłonnych systemów komunikacyjnych. Bez względu na ilość aktualnie odbierających informację odbiorników (zwykle 1) nadajnik musi ją nadać w takiej formie fizycznej, aby mogły ją odbierać wszystkie możliwe do podłączenia odbiorniki. Ograniczenie dostępu do magistrali do znanej liczby urządzeń o określonych parametrach pozwala na przeprowadzenie optymalizacji energoczasowej, czego efektem jest znaczący spadek poboru mocy przez mk zamknięte przy zachowaniu bardzo dobrych parametrów czasowych. 3. Zwiększenie szybkości pracy. Precyzyjnie zdefiniowana i niezmienna magistrala wewnętrzna mk pozwala na optymalizację jego parametrów czasowych. mk wyposażone są w rozległe i programowalne układy dystrybucji sygnałów zegarowych wewnątrz układu scalonego, pozwalające na osiągnięcie dużych szybkości wykonania programu bez znaczącego wzrostu poboru mocy. 4. Zmniejszenie ilości zacisków zewnętrznych i zwiększenie ich elastyczności. Zadaniem zacisków zewnętrznych jest zapewnienie przepływu sygnałów pomiędzy otoczeniem a układem we-wy wbudowanymi w mk. Ponieważ układy te w większości zastosowań wykorzystywane są w sposób sekwencyjny, możliwe jest dołączenie do jednego zacisku fizycznego kilku wewnętrznych układów we-wy. Pozwala to na dynamiczna rekonfigurację funkcji zacisków w takich mk.

18 18 Brak dostępu do magistrali wewnętrznej jest często rekompensowany wyposażeniem mk w specjalizowane porty do wymiany informacji z układami zewnętrznymi. Najczęściej stosuje się transmisję szeregową: SPI, I2C, RS232 itp. Na rys pokazano warstwowy model mk zamkniętego. Rys Warstwowy model mk zamkniętego Mk zamknięty składa się z kilku warstw: Centralną część zajmuje mikroprocesor rdzeniowy. Jest to typowy mikroprocesor o architekturze magistralowej. Zawiera on wszystkie, niezbędne do pracy zasoby: a) jednostka ALU; b) pamięć danych (RAM), rejestry; c) pamięć programu (ROM); d) układ sterujący; e) generatory sygnałów zegarowych, systemy przerwań itp. Jego cechą charakterystyczną jest nierozszerzalność zasobów oraz duża izolacja od świata zewnętrznego (zapewnia to niezawodność). 2. Magistrala wewnętrzna służy do wymiany informacji pomiędzy różnymi wewnętrznymi blokami składowymi w mk. Głównym zadaniem jest organizacja pracy mikrosystemu znajdującego się wewnątrz układu scalonego. 3. Warstwa programowalnych układów we/wy charakteryzuje dany typ mk. Zestawy urządzeń we/wy dostosowuje się do przewidywanych zastosowań danego mk. Cechą charakterystyczną układów we/wy spotykanych w mk jest ich duża autonomiczność. Układy te mogą wykonywać swoje funkcje niezależnie i współbieżnie z komputerem rdzeniowym i innymi układami. Możliwa jest często praca układu we/wy przy zablokowanym (np. dla oszczędności energii) procesorze rdzeniowym. 4. Multipleksery zacisków niezbędne są w przypadku, gdy sumaryczna liczba wejść i wyjść wewnętrznych układu jest większa od ilości zacisków fizycznych. Zachodzi to w większości mk. Umożliwiają ograniczenie ilości zacisków fizycznych przy zachowaniu elastyczności mk, dając możliwość dynamicznej zmiany funkcji danego zacisku fizycznego. Sumaryczny stosunek zaciski logiczne / fizyczne waha się od około przy prostych mk, do 4 w mk klasy średniej i wyższej. 1.

19 19 5. Warstwa zacisków fizycznych łączy mk ze światem zewnętrznym. Jej parametry są istotne dla zapewnienia prawidłowej współpracy mk z układami otaczającymi go. Parametry elektryczne tej warstwy (obciążalność, max. napięcie, tryb pracy nadajnika itp.) mogą być zmieniane statycznie dla serii mk poprzez odpowiednie uzgodnienia z producentem. Odbywa się to poprzez wybór odpowiednich opcji w czasie przystępowania do produkcji masek opisujących sposób wykonania pamięci programu. Niektóre mk pozwalają na dynamiczną zmianę części parametrów układów współpracujących z zaciskami Elementy składowe procesora rdzeniowego W mk, w skład procesora rdzeniowego, poza samym procesorem przetwarzającym instrukcje i pamięciami, znajdują się również inne urządzenia niezbędne do funkcjonowania mk. Są to między innymi: oscylator i układ dystrybucji sygnałów zegarowych, układ resetu (często bardzo rozbudowany), układy nadzorujące (często traktuje je się jako układy peryferyjne mk), system przerwań Oscylator i dystrybucja sygnałów zegarowych W mk można wyróżnić dwa źródła sygnału zegarowego: sygnał zegarowy generowany wewnątrz mk (wewnętrzny układ RC), sygnał zegarowy generowany z wykorzystaniem zewnętrznych elementów. Każdy mk posiada dedykowane dwie końcówki służące wyłącznie do podłączenia zewnętrznych elementów wykorzystywanych do generacji (stabilizacji) sygnału zegarowego. Jedna z nich jest wejściem (najczęściej oznaczana OSC1 lub XTAL1), druga wyjściem (OSC2 lub XTAL2) wewnętrznego układu generatora. Można do nich podłączyć oscylator kwarcowy, ceramiczny, układ RC lub podać na końcówkę wejściową zewnętrzny sygnał prostokątny. Stąd możemy wyróżnić następujące metody generacji sygnału zegarowego: z rezonatorem kwarcowym/ceramicznym (rys. 2.14a), z rezonatorem RC (najtańszy ale najgorsze parametry generowanego przebiegu) (rys. 2.14b), z podaniem zewnętrznego sygnału prostokątnego na wejście OSC1 (rys. 2.14c), z wewnętrznym rezonatorem RC (rys. 2.14d). a) b)

20 c) 20 d) Rys Sposoby generowania sygnału zegarowego Ponadto możemy wyróżnić następujące tryby pracy oscylatorów kwarcowych/ceramicznych: LP generowanie niskich częstotliwości dla zapewnienia minimalnego poboru mocy (Low Power Crystal), XT generowanie średnich częstotliwości (Crystal/Resonator), HS generowanie wysokich częstotliwości (Hight Speed Crystal/Resonator). Producenci zawierają w dokumentacji mk tabele wartości kondensatorów dla poszczególnych trybów pracy oscylatora/rezonatora. Dla przykładu podano tabelę wartości kondensatorów C1 i C2 dla wszystkich trybów pracy oscylatora kwarcowego mk PIC16F873. Tabela 2.2. Wartości kondensatorów w zależności od trybu pracy oscylatora kwarcowego Metodę generacji sygnału zegarowego jak i tryb pracy oscylatora wybiera się na etapie programowania mk, czyli wprowadzania kodu programu do jego pamięci FLASH. Służą do tego dwa bity zawarte w rejestrze konfiguracyjnym mk (rys. 2.15). Rejestr ten znajduje się w pamięci FLASH pod adresem 2007H i jest dostępny (można do niego pisać i z niego czytać) wyłącznie w trybie programowania wykorzystując w tym celu programator i dołączone do niego oprogramowanie np. MPLAB. Rejestr konfiguracyjny jest 14-bitowy. Na rys pokazano jego fragment związany z omawianymi zagadnieniami. Z rys. wynika, iż niezbędne jest skonfigurowanie oscylatora mk zgodnie z tym, co zostało zamontowane na płytce drukowanej. W przeciwnym razie mk nie będzie działał!

21 21 Rys Fragment rejestru konfiguracyjnego mk PIC16F873 Ponieważ od mk wymaga się niezawodności niektóre z nich wyposażone są w specjalne generatory zapewniające ciągłą, bezawaryjną generację sygnału zegarowego oraz jego filtrację, np. mk ST72215G. Ponadto cechą charakterystyczną współczesnych mk są rozbudowane układy generacji i dystrybucji sygnałów zegarowych. Potrzeba ta wynika z dużej ilości pracujących autonomicznie modułów we/wy wymagających różnych sygnałów zegarowych. Same procesory rdzeniowe często są wyposażone w 2 generatory zegarowe, jeden o częstotliwości zapewniającej maksymalną szybkość pracy i drugi pozwalający na pracę z częstotliwością 32,768 khz, np. Rabbit Sieć dystrybucji sygnałów zegarowych pozwala na programowanie częstotliwości sygnałów dostarczonych do różnych bloków. Możliwe jest też całkowite odcięcie sygnałów zegarowych od wybranych bloków. Jest to jedna z technik redukcji prądu zasilania pobieranego przez mk. Parametry dystrybucji sygnałów zegarowych określają graniczne możliwości czasowe danego mk. Rys Układ generacji i dystrybucji sygnałów zegarowych mk ST72215G

22 22 Np. mk ST72215G posiada układ ochrony zegara CSS (Clock Security System), który składa się z układu filtrującego sygnał zegarowy i układu bezpieczny oscylator SO (Save Oscilator). Pierwszy układ filtruje pojawiające się na wejściu impulsy zakłócające oraz sygnały o większej częstotliwości niż założono. Drugi układ w przypadku zaniku sygnału zegarowego, np. uszkodzenie oscylatora kwarcowego, po okresie sygnału generowanego przez siebie, załącza swój sygnał jako sygnał zegarowy do czasu powrotu właściwego sygnału zegarowego (rys. 2.17). Oprogramowanie na ten mk powinno być tak napisane, aby mk wykonał odpowiednie zadania związane z trybem awaryjnym w jakim się znalazł. Rys Funkcje spełniane przez CSS i SO Na rys pokazano układ dystrybucji sygnałów zegarowych MCC (Main Clock Controller) mk ST72215G. Dostarcza on sygnał zegarowy do jc i wewnętrznych urządzeń peryferyjnych. Składa się z programowalnego preskalera i układu dostarczającego sygnał do zewnętrznych urządzeń. Preskaler pozwala na ustawienie odpowiedniej częstotliwości sygnału zegarowego. Dzięki temu możliwa jest redukcja pobieranej mocy przez mk, bo jak wiadomo moc pobierana przez układy CMOS jest proporcjonalna do ich częstotliwości pracy. Rys Układ dystrybucji sygnału zegarowego mk ST72215G Techniki redukcji mocy i tryby specjalne mk Bezpośrednio z układami dystrybucji sygnałów zegarowych związane są techniki redukcji mocy i tryby specjalne mk. Często stawia się mk rygorystyczne wymagania co do ilości pobieranej energii w czasie ich pracy. Stosuje się je często w urządzeniach zasilanych bateryjnie i pracujących w trybie ciągłym tj. 24 godz. na dobę.

23 23 Jak wspomniano wcześniej, zależność poboru mocy układów CMOS zależy od częstotliwości pracy, stąd podstawową metodą redukcji mocy jest elastyczne sterowanie szybkością pracy w zależności od aktualnych potrzeb. Służy do tego sieć dystrybucji sygnałów zegarowych w mk. Kolejnym sposobem redukcji poboru mocy jest zastosowanie dwóch oscylatorów. Jeden pracuje z maksymalną częstotliwością główny oscylator (np. 10MHz lub 40MHz), drugi z częstotliwością niską np. 32,768 khz. Przejście z wysokiej do niskiej częstotliwości powoduje spadek pobieranej mocy o około trzy rzędy. Np. mk Rabbit 2000 (rys. 2.19). Rys Fragment schematu blokowego mk Rabbit 2000 Sieć dystrybucji sygnałów zegarowych umożliwia również odłączanie od sygnału zegarowego jc, jak i urządzeń peryferyjnych lub wręcz wstrzymanie pracy oscylatora. Stąd mk może znaleźć się w następujących specjalnych trybach pracy: tryb pełnej aktywności (RUN), tryb, w którym nie pracuje procesor, a pracują wszystkie urządzenia peryferyjne (WAIT lub SLEEP) inaczej tryb uśpienia, tryb, w którym nie pracuje procesor, a pracują niektóre urządzenia peryferyjne (układ przerwań, porty równoległe, przetworniki A/C zasilane zewnętrznym sygnałem zegarowym), tryb pełnego wstrzymania (zamrożenia) pracy mk zatrzymany układ oscylatora, zatem żadne urządzenie nie pracuje, stan rejestrów i pamięci RAM jest zamrożony (STOP lub HALT). Dla niektórych mk np. COP880, przy korzystaniu z zewnętrznego źródła sygnału zegarowego możliwe jest wstrzymanie tego sygnału, co powoduje zamrożenie mk. Ponowne pojawienie się tego sygnału odmraża mk i kontynuowany jest przerwany cykl rozkazowy. W tym przypadku układ oscylatora i dystrybucji sygnałów zegarowych musi spełniać wysokie wymagania czasowe. Musi nadzorować jakością generowanych sygnałów i synchronizować zmiany stanu procesora. Przy wchodzeniu w tryby specjalne mk istotne jest aby przez zaciski we/wy nie płynął prąd, gdyż wartość tego prądu może być np. o kilka rzędów większa niż jego pobór przez sam mk w stanie STOP.

24 24 Rys Specjalne tryby pracy dla mk ST72215G Na rys pokazano graf przejść do poszczególnych trybów pracy mk ST72215G. W ryby WAIT i HALT wchodzi się wykonując odpowiednie instrukcje, natomiast tryb SLOW uzyskuje się ustawiając odpowiednie bity sterujące preskalerem (rys. 2.18). Aby przejść do trybu SLOW WAIT należy najpierw przejść w tryb SLOW a następnie wydać komendę WFI. Wejście w specjalny tryb pracy mk można uzyskać w następujący sposób: wykonując odpowiednią, przeznaczoną do tego celu instrukcję (np. SLEEP w AT90S8515 i PIC16F873, WFI, HALT w ST72215G), ustawiając odpowiedni bit (np. dla AT89C51 w rejestrze PCON: bit IDL stan wyłączenia jc, bit PD stan zatrzymania mk). Są następujące sposoby wyjścia z trybu uśpienia: pojawienie się przerwania zewnętrznego lub przerwania od urządzeń peryferyjnych (przerwania te muszą być wcześniej odblokowane), reset zewnętrzny mk, reset wywołany przez niezablokowany, aktualnie pracujący układ watchdog. Często jest tak, że mk obudzony przez przerwanie obsługe je, a następnie ponownie przechodzi w tryb uśpienia. Po resecie mk jest w stanie początkowym i pracuje zgodnie z programem zawartym w pamięci programu. Ze stanu zatrzymania mk można wyjść wyłącznie na dwa sposoby: reset zewnętrzny mk, reset wywołany przez niezablokowany, aktualnie pracujący układ watchdog. W tym przypadku układ watchdog musi być taktowany własnym generatorem (najczęściej jest to generator RC wbudowany w strukturę mk) Reset mk

25 25 Sygnał RESET służy do inicjalizacji pracy mk, czyli wprowadzenia go w stan początkowy. Inicjalizacja polega najczęściej na wyzerowaniu licznika rozkazów, ustawienia go na początek wykonywania programu. Urządzenia we/wy i rejestry sterujące są ustawiane w tryb standardowy (spoczynku). Uniwersalne końcówki we/wy są ustawione jako wejścia o wysokiej impedancji, aby minimalnie wpływać na otoczenie mk (w dokumentacji każdego mk znajduje się informacja o stanie wszystkich rejestrów i portów po resecie mk). Dla niektórych mk po resecie może być czytany rejestr stanu określający tryb pracy mk, stany (poziomy) sygnałów na niektórych końcówkach, a następnie czytany adres początku programu znajdujący się w obszarze obsługi resetu. Dla mk o architekturze harwardzkiej po resecie wykonywana jest instrukcja najczęściej spod adresu 00h (np. 80C51, AT90S8515, PIC16F873, COP880). Natomiast dla mk bazujących na architekturze Von-Neumanna adres ten znajduje się zazwyczaj na końcu obszaru adresowania pamięci, gdyż początkowe adresy najczęściej przypisane są urządzeniom we/wy i pamięci RAM (np. ST72215G po resecie wykonywana jest instrukcja spod adresu FFFEh-FFFFh). Możemy wyróżnić następujące źródła resetu: reset po włączeniu zasilania, reset wywołany zewnętrznym sygnałem RESET, reset programowy wywołany przez ustawienie odpowiedniego bitu, reset wywołany przez układ watchdog, reset wywołany przez układy nadzorujące poprawność pracy mk (np. od układu wykrywającego spadek napięcia zasilania LVD (Low Voltage Detector) w ST72215G, BOR (Brown-out Reset) w PIC16F873). Każdy mk posiada dedykowaną końcówkę (pin) do której przypisany jest zewnętrzny sygnał resetu. Sygnał ten umożliwia asynchroniczny reset mk. Najczęściej jest on aktywny poziomem niskim (z wyjątkiem mk 80C51). Najprostszy i najczęściej stosowany układ przedstawiono na rys Zapewnia on niski poziom sygnału bezpośrednio po włączeniu zasilania i trwający przez określony czas. Jest to układ RC. Zatem czas trwania resetu zależy od stałej czasowej RC. Rys Prosty układ resetu Obecnie mk posiadają rozbudowane układy resetu, które poza resetem mk również monitorują poprawność pracy systemu i reagują na sytuacje awaryjne. Na rys pokazano taki układ.

26 26 Rys Układ resetu mk PIC16F873 Reset po włączeniu zasilania jest generowany przez specjalny blok (VDD Rise Detect), w przypadku wykrycia przez niego narastającego zbocza sygnału zasilającego. Dzięki temu układ z rys jest zbędny. Sygnał resetu może być również wywołany przez bloki nadzorujące poprawność pracy mk takie jak BOR, czy LVD. BOR sprawdza napięcie zasilające. Jeżeli spadnie ono poniżej VBOR i jego spadek trwać będzie przynajmniej przez TBOR to układ wysyła sygnał resetu. Działanie układu LVD jest bardziej złożone. Można powiedzieć, iż spełnia on funkcje detektora narastania napięcia zasilania jak i układu BOR. Na rys pokazano na przebiegach działanie takiego układu. Rys Przebiegi sygnałów VDD i RESET dla układu LVD mk ST72215G Układ generuje sygnał resetu dopóki VDD podczas narastania nie osiągnie założonego napięcia VIT+ oraz gdy to napięcie spadnie poniżej VIT- podczas opadania. Kolejnym źródłem resetu jest układ watchdog. Generuje on sygnał resetu, gdy nastąpi zawieszenie programu w mk.

27 27 Układy resetu posiadają również dodatkowe układy wydłużające sygnał reset (rys. 2.22). Ma to zapewnić pracę mk z już ustalonym napięciem zasilania i ustalonym sygnałem z oscylatora. W PIC16F873 licznik PWRT, z własnym wewnętrznym oscylatorem RC, wydłuża sygnał resetu o TPWRT=72ms, a licznik OST o dodatkowe 1024 cykle sygnału z oscylatora kwarcowego (TOSC), oczywiście o ile są włączone. Rys Przebiegi sygnałów w układzie resetu mk PIC16F873 Dla mk ST72215G wydłużenie tego sygnału jest stałe i wynosi 4096 cykli sygnału zegarowego. Do konfiguracji układów resetu są przeznaczone specjalne rejestry. Znajduje się w nich również informacja o przyczynie resetu, np. czy reset nastąpił sygnałem zewnętrznym, czy po włączeniu zasilania, czy też został wywołany przez układ watchdog. Przy pomocy sygnału reset każdy mk można wprowadzić w tryb testowy. Służy on do testowania końcówek mk na etapie produkcyjnym. Podczas pracy mk w systemie należy zapewnić taką konfigurację sygnałów aby nigdy nie wszedł on w stan testowania (służy on tylko do testowania w fazie produkcji) Układy nadzorujące układ watchdog Do układów nadzorujących poprawność pracy mk można zaliczyć: autonomiczne liczniki watchdog (licznik nadzorcy), monitory sygnału zegarowego, układy detekcji zaniku i powrotu napięć zasilających, układy detekcji przyczyn awarii systemowych. Część z tych układów została już przedstawiona przy omawianiu układu oscylatora i dystrybucji sygnału zegarowego oraz układu resetu. Najczęściej stosowanym układem nadzorującym pracę mk jest licznik watchdog. Poprawnie pracujący mk charakteryzuje się pewną sygnaturą częstotliwościową lub czasową zawierającą się w ściśle określonych granicach. Wynika to z zasady pisania oprogramowania na mk (rys 2.25). Program użytkownika, po części inicjalizacyjnej, jest wykonywany w niekończącej się pętli od czasu do czasu przerywanej przez obsługę przerwań. Program ten jest jedynym programem jaki znajduje się w mk w przeciwieństwie do komputerów PC, gdzie program użytkownika jest uruchamiany przez pracujący na okrągło system operacyjny. W mk nie ma systemu operacyjnego. Zatem mk wykonuje tylko to co napiszemy. Stąd aby mk działał prawidłowo nasz program musi pracować w nieskończonej

28 28 pętli. Pętla ta jest wykonywana z określoną częstotliwością możliwą do obliczenia przez programistę (znamy częstotliwość oscylatora, z dokumentacji wiemy ile cykli zegarowych potrzebuje każda instrukcja i oczywiście wiemy ile jest tych instrukcji w pętli). Rys Struktura programu użytkownika w mk Jeżeli w jakimś momencie pętla ta zawiesi się (np. błąd w programie) lub będzie wykonywana zdecydowanie wolniej niż powinna (np. nieprawidłowa praca urządzeń peryferyjnych) jest to równoważne z wykryciem sytuacji alarmowej. Układem, który to wykrywa jest autonomiczny licznik watchdog. Gdy wykryje on tę sytuację wysyła sygnał reset zerujący mk oraz ustawia odpowiednie bity w rejestrze przechowującym informację o przyczynach wyzerowania procesora. Zasada jego działania jest następująca. Układ ten jest licznikiem zasilanym sygnałem z własnego oscylatora RC (np. dla PIC16F873 i AT90S8515) lub oscylatora kwarcowego (rys. 2.26). Jeśli nastąpi jego przepełnienie to wysyła on sygnał reset. Czyli trzeba ten licznik co jakiś czas zerować. Służą do tego specjalne instrukcje np. CLRWDT dla PIC16F873, które należy umieścić w nieskończonej pętli programu (lub inaczej głównej pętli programu). Czyli jak program pracuje prawidłowo to rozkaz zerujący watchdog jest wykonywany cyklicznie z założoną częstotliwością. Natomiast gdy program się zawiesi to instrukcja ta nie zostanie wykonana na czas i licznik watchdoga przepełni się wywołując reset mk. Rys Układ watchdog mk ST72215G

29 29 W przypadku mk ST72215G należy cyklicznie wpisywać do rejestru CR watchdoga bajt o wartości od FFh do C0h w zależności od tego ile zliczeń impulsów zegara założyliśmy. Licznik zlicza w dół (dekrementuje). Bit WDGA służy do włączenia/wyłączenia watchdoga. Natomiast wyzerowanie bitu T6 generuje sygnał resetu. Bit ten można również programowo wyzerować wywołując w ten sposób reset programowy. Po uruchomieniu (inicjalizacji) mk, analiza śladu programu (np. stosu, zawartości rejestrów, itp.) oraz znajomość przyczyny zerowania daje podstawy do tworzenia programów auto-korekcyjnych, które po wykryciu błędu oprogramowania sygnalizują i zapamiętują numer błędu i mogą dokonywać blokady odpowiedniego fragmentu kodu zabezpieczając system przed ciągłym blokowaniem się w sytuacjach alarmowych System przerwań Współpraca jc z urządzeniami peryferyjnymi i zewnętrznymi jest realizowana na dwa sposoby: przez programowe testowanie (odpytywanie, przeglądanie) stanu urządzeń (polling), w systemie przerwań. Metoda z przeglądaniem programowym polega na okresowym sprawdzaniu zawartości rejestru kontrolno-sterującego lub odpowiednich bitów (flag przerwań) związanych z każdym urządzeniem peryferyjnym i na podstawie tego określenie, czy urządzenie wymaga obsługi, czy też nie. Obsługa priorytetowa (kolejność obsługi) jest tu realizowana przez ustalenie odpowiedniej kolejności testowania urządzeń. Urządzenie o największym priorytecie jest testowane w każdym cyklu sprawdzania jako pierwsze, natomiast urządzenie o najmniejszym priorytecie jako ostatnie. Wadą takiego rozwiązania jest długi czas oczekiwania urządzeń na obsługę, ponieważ jc musi w każdym cyklu sprawdzić wszystkie urządzenia, nawet jeśli nie wymagają one obsługi. Znacznie bardziej efektywny jest system (układ) przerwań. Umożliwia on natychmiastowe, czasowe wstrzymanie aktualnie wykonywanej sekwencji programu użytkownika (rys. 2.25) i przejście do innej sekwencji programu związanej z obsługą określonego zdarzenia (przerwania), zaistniałego w urządzeniach peryferyjnych. Generalnie, schemat obsługi przerwania jest następujący: urządzenie peryferyjne wykrywa wystąpienie określonego zdarzenia wymagającego reakcji mk, urządzenie peryferyjne zgłasza jc, za pośrednictwem układu przerwań, żądanie przerwania, jc przerywa aktualnie wykonywaną sekwencję programu i zachowuje w specjalnym obszarze pamięci stosie (stack), wszystkie dane związane z aktualnie wykonywanym programem, jc przechodzi do wykonywania programu napisanego specjalnie przez użytkownika do obsługi danego zdarzenia, po wykonaniu tego programu jc odtwarza ze stosu dane związane z przerwanym programem i kontynuuje wykonanie przerwanego programu. Możemy wyróżnić następujące źródła przerwań: przerwanie zewnętrzne (wywołane sygnałem o odpowiednim zboczu: narastającym lub opadającym lub poziomiem (najczęściej niskim) na dedykowanym pinie),

WPROWADZENIE Mikrosterownik mikrokontrolery

WPROWADZENIE Mikrosterownik mikrokontrolery WPROWADZENIE Mikrosterownik (cyfrowy) jest to moduł elektroniczny zawierający wszystkie środki niezbędne do realizacji wymaganych procedur sterowania przy pomocy metod komputerowych. Platformy budowy mikrosterowników:

Bardziej szczegółowo

Schemat blokowy procesora rdzeniowego ATmega16. Głównym zadaniem JC jest zapewnienie poprawnego i szybkiego wykonywania programu.

Schemat blokowy procesora rdzeniowego ATmega16. Głównym zadaniem JC jest zapewnienie poprawnego i szybkiego wykonywania programu. Jednostka centralna procesor (CPU, rdzeń) Schemat blokowy procesora rdzeniowego ATmega16 Głównym zadaniem JC jest zapewnienie poprawnego i szybkiego wykonywania programu. Zadania JC: dostęp do pamięci,

Bardziej szczegółowo

Mikrokontrolery czyli o czym to będzie...

Mikrokontrolery czyli o czym to będzie... Mikrokontrolery czyli o czym to będzie... Ryszard J. Barczyński, 2017 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego Materiały dydaktyczne do użytku wewnętrznego PNPiM Poznamy: Cechy

Bardziej szczegółowo

Technika mikroprocesorowa. W. Daca, Politechnika Szczecińska, Wydział Elektryczny, 2007/08

Technika mikroprocesorowa. W. Daca, Politechnika Szczecińska, Wydział Elektryczny, 2007/08 Pamięci Układy pamięci kontaktują się z otoczeniem poprzez szynę danych, szynę owa i szynę sterującą. Szerokość szyny danych określa liczbę bitów zapamiętywanych do pamięci lub czytanych z pamięci w trakcie

Bardziej szczegółowo

Wstęp...9. 1. Architektura... 13

Wstęp...9. 1. Architektura... 13 Spis treści 3 Wstęp...9 1. Architektura... 13 1.1. Schemat blokowy...14 1.2. Pamięć programu...15 1.3. Cykl maszynowy...16 1.4. Licznik rozkazów...17 1.5. Stos...18 1.6. Modyfikowanie i odtwarzanie zawartości

Bardziej szczegółowo

Wykład Mikrokontrolery i mikrosystemy Cele wykładu:

Wykład Mikrokontrolery i mikrosystemy Cele wykładu: Wykład Mikrokontrolery i mikrosystemy Cele wykładu: Poznanie podstaw budowy, zasad działania i sterowania mikrokontrolerów i ich urządzeń peryferyjnych. Niezbędna wiedza do dalszego samokształcenia się

Bardziej szczegółowo

2. Architektura mikrokontrolerów PIC16F8x... 13

2. Architektura mikrokontrolerów PIC16F8x... 13 Spis treści 3 Spis treœci 1. Informacje wstępne... 9 2. Architektura mikrokontrolerów PIC16F8x... 13 2.1. Budowa wewnętrzna mikrokontrolerów PIC16F8x... 14 2.2. Napięcie zasilania... 17 2.3. Generator

Bardziej szczegółowo

Mikrokontrolery i mikrosystemy

Mikrokontrolery i mikrosystemy Mikrokontrolery i mikrosystemy Materiały do wykładu Tom I MIKROKONTROLERY dr hab. inż. Zbigniew Czaja Gdańsk 2015 Mikrokontrolery i mikrosystemy 1 Spis treści Tom I 1. Wprowadzenie...4 2. Mikrokontrolery...6

Bardziej szczegółowo

Wykład Mikroprocesory i kontrolery

Wykład Mikroprocesory i kontrolery Wykład Mikroprocesory i kontrolery Cele wykładu: Poznanie podstaw budowy, zasad działania mikroprocesorów i układów z nimi współpracujących. Podstawowa wiedza potrzebna do dalszego kształcenia się w technice

Bardziej szczegółowo

Mikrosterowniki. i mikrosystemy rozproszone MIKROSTEROWNIKI. Tom I. Materiały do wykładu. dr hab. inż. Zbigniew Czaja

Mikrosterowniki. i mikrosystemy rozproszone MIKROSTEROWNIKI. Tom I. Materiały do wykładu. dr hab. inż. Zbigniew Czaja Mikrosterowniki i mikrosystemy rozproszone Materiały do wykładu Tom I MIKROSTEROWNIKI dr hab. inż. Zbigniew Czaja Gdańsk 2015 Mikrosterowniki i mikrosystemy rozproszone 1 Spis treści Tom I 1. Wstęp...4

Bardziej szczegółowo

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne Spis treści 5 Spis treœci Co to jest mikrokontroler? Wprowadzenie... 11 Budowa systemu komputerowego... 12 Wejścia systemu komputerowego... 12 Wyjścia systemu komputerowego... 13 Jednostka centralna (CPU)...

Bardziej szczegółowo

Systemy wbudowane. Mikrokontrolery cz. 1. Opracowano na podstawie (http://wazniak.mimuw.edu.pl/

Systemy wbudowane. Mikrokontrolery cz. 1. Opracowano na podstawie (http://wazniak.mimuw.edu.pl/ Systemy wbudowane Mikrokontrolery cz. 1 Opracowano na podstawie (http://wazniak.mimuw.edu.pl/ Architektury mikrokontrolerów Architektury mikrokontrolerów są to zespoły atrybutów widzianych przez programistę.

Bardziej szczegółowo

Układy zegarowe w systemie mikroprocesorowym

Układy zegarowe w systemie mikroprocesorowym Układy zegarowe w systemie mikroprocesorowym 1 Sygnał zegarowy, sygnał taktujący W każdym systemie mikroprocesorowym jest wymagane źródło sygnałów zegarowych. Wszystkie operacje wewnątrz jednostki centralnej

Bardziej szczegółowo

MIKROKONTROLERY I MIKROPROCESORY

MIKROKONTROLERY I MIKROPROCESORY PLAN... work in progress 1. Mikrokontrolery i mikroprocesory - architektura systemów mikroprocesorów ( 8051, AVR, ARM) - pamięci - rejestry - tryby adresowania - repertuar instrukcji - urządzenia we/wy

Bardziej szczegółowo

MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW

MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW Projektowanie urządzeń cyfrowych przy użyciu układów TTL polegało na opracowaniu algorytmu i odpowiednim doborze i zestawieniu układów realizujących różnorodne funkcje

Bardziej szczegółowo

ARCHITEKTURA PROCESORA,

ARCHITEKTURA PROCESORA, ARCHITEKTURA PROCESORA, poza blokami funkcjonalnymi, to przede wszystkim: a. formaty rozkazów, b. lista rozkazów, c. rejestry dostępne programowo, d. sposoby adresowania pamięci, e. sposoby współpracy

Bardziej szczegółowo

System mikroprocesorowy i peryferia. Dariusz Chaberski

System mikroprocesorowy i peryferia. Dariusz Chaberski System mikroprocesorowy i peryferia Dariusz Chaberski System mikroprocesorowy mikroprocesor pamięć kontroler przerwań układy wejścia wyjścia kontroler DMA 2 Pamięć rodzaje (podział ze względu na sposób

Bardziej szczegółowo

Mikrokontrolery i mikrosystemy

Mikrokontrolery i mikrosystemy Mikrokontrolery i mikrosystemy Materiały do wykładu Tom I MIKROKONTROLERY dr inŝ. Zbigniew Czaja Gdańsk 2008 Mikrokontrolery i mikrosystemy 2 Spis treści Tom I 1. Wprowadzenie...4 2. Mikrokontrolery...6

Bardziej szczegółowo

LEKCJA TEMAT: Zasada działania komputera.

LEKCJA TEMAT: Zasada działania komputera. LEKCJA TEMAT: Zasada działania komputera. 1. Ogólna budowa komputera Rys. Ogólna budowa komputera. 2. Komputer składa się z czterech głównych składników: procesor (jednostka centralna, CPU) steruje działaniem

Bardziej szczegółowo

43 Pamięci półprzewodnikowe w technice mikroprocesorowej - rodzaje, charakterystyka, zastosowania

43 Pamięci półprzewodnikowe w technice mikroprocesorowej - rodzaje, charakterystyka, zastosowania 43 Pamięci półprzewodnikowe w technice mikroprocesorowej - rodzaje, charakterystyka, zastosowania Typy pamięci Ulotność, dynamiczna RAM, statyczna ROM, Miejsce w konstrukcji komputera, pamięć robocza RAM,

Bardziej szczegółowo

Struktura i funkcjonowanie komputera pamięć komputerowa, hierarchia pamięci pamięć podręczna. System operacyjny. Zarządzanie procesami

Struktura i funkcjonowanie komputera pamięć komputerowa, hierarchia pamięci pamięć podręczna. System operacyjny. Zarządzanie procesami Rok akademicki 2015/2016, Wykład nr 6 2/21 Plan wykładu nr 6 Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia niestacjonarne I stopnia Rok akademicki 2015/2016

Bardziej szczegółowo

Organizacja typowego mikroprocesora

Organizacja typowego mikroprocesora Organizacja typowego mikroprocesora 1 Architektura procesora 8086 2 Architektura współczesnego procesora 3 Schemat blokowy procesora AVR Mega o architekturze harwardzkiej Wszystkie mikroprocesory zawierają

Bardziej szczegółowo

Temat: Pamięci. Programowalne struktury logiczne.

Temat: Pamięci. Programowalne struktury logiczne. Temat: Pamięci. Programowalne struktury logiczne. 1. Pamięci są układami służącymi do przechowywania informacji w postaci ciągu słów bitowych. Wykonuje się jako układy o bardzo dużym stopniu scalenia w

Bardziej szczegółowo

Mikroprocesor Operacje wejścia / wyjścia

Mikroprocesor Operacje wejścia / wyjścia Definicja Mikroprocesor Operacje wejścia / wyjścia Opracował: Andrzej Nowak Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz Operacjami wejścia/wyjścia nazywamy całokształt działań potrzebnych

Bardziej szczegółowo

Technika mikroprocesorowa. W. Daca, Politechnika Szczecińska, Wydział Elektryczny, 2007/08

Technika mikroprocesorowa. W. Daca, Politechnika Szczecińska, Wydział Elektryczny, 2007/08 Mikrokontrolery 8-bitowe Mikrokontrolery 8-bitowe stanowią wciąż najliczniejszą grupę mikrokontrolerów. Istniejące w chwili obecnej na rynku rodziny mikrokontrolerów opracowane zostały w latach 80-tych.

Bardziej szczegółowo

Metody obsługi zdarzeń

Metody obsługi zdarzeń SWB - Przerwania, polling, timery - wykład 10 asz 1 Metody obsługi zdarzeń Przerwanie (ang. Interrupt) - zmiana sterowania, niezależnie od aktualnie wykonywanego programu, spowodowana pojawieniem się sygnału

Bardziej szczegółowo

Szkolenia specjalistyczne

Szkolenia specjalistyczne Szkolenia specjalistyczne AGENDA Programowanie mikrokontrolerów w języku C na przykładzie STM32F103ZE z rdzeniem Cortex-M3 GRYFTEC Embedded Systems ul. Niedziałkowskiego 24 71-410 Szczecin info@gryftec.com

Bardziej szczegółowo

Hardware mikrokontrolera X51

Hardware mikrokontrolera X51 Hardware mikrokontrolera X51 Ryszard J. Barczyński, 2016 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego Materiały dydaktyczne do użytku wewnętrznego Hardware mikrokontrolera X51 (zegar)

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Tydzień 11 Wejście - wyjście Urządzenia zewnętrzne Wyjściowe monitor drukarka Wejściowe klawiatura, mysz dyski, skanery Komunikacyjne karta sieciowa, modem Urządzenie zewnętrzne

Bardziej szczegółowo

Zagadnienia zaliczeniowe z przedmiotu Układy i systemy mikroprocesorowe elektronika i telekomunikacja, stacjonarne zawodowe

Zagadnienia zaliczeniowe z przedmiotu Układy i systemy mikroprocesorowe elektronika i telekomunikacja, stacjonarne zawodowe Zagadnienia zaliczeniowe z przedmiotu Układy i systemy mikroprocesorowe elektronika i telekomunikacja, stacjonarne zawodowe System mikroprocesorowy 1. Przedstaw schemat blokowy systemu mikroprocesorowego.

Bardziej szczegółowo

RODZAJE PAMIĘCI RAM. Cz. 1

RODZAJE PAMIĘCI RAM. Cz. 1 RODZAJE PAMIĘCI RAM Cz. 1 1 1) PAMIĘĆ DIP DIP (ang. Dual In-line Package), czasami nazywany DIL - w elektronice rodzaj obudowy elementów elektronicznych, głównie układów scalonych o małej i średniej skali

Bardziej szczegółowo

Technika Mikroprocesorowa

Technika Mikroprocesorowa Technika Mikroprocesorowa Dariusz Makowski Katedra Mikroelektroniki i Technik Informatycznych tel. 631 2648 dmakow@dmcs.pl http://neo.dmcs.p.lodz.pl/tm 1 System mikroprocesorowy? (1) Magistrala adresowa

Bardziej szczegółowo

Cyfrowe układy scalone

Cyfrowe układy scalone Cyfrowe układy scalone Ryszard J. Barczyński, 2010 2015 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego Materiały dydaktyczne do użytku wewnętrznego Cyfrowe układy scalone Układy cyfrowe

Bardziej szczegółowo

Kurs Elektroniki. Część 5 - Mikrokontrolery. www.knr.meil.pw.edu.pl 1/26

Kurs Elektroniki. Część 5 - Mikrokontrolery. www.knr.meil.pw.edu.pl 1/26 Kurs Elektroniki Część 5 - Mikrokontrolery. www.knr.meil.pw.edu.pl 1/26 Mikrokontroler - autonomiczny i użyteczny system mikroprocesorowy, który do swego działania wymaga minimalnej liczby elementów dodatkowych.

Bardziej szczegółowo

Architektura Systemów Komputerowych. Bezpośredni dostęp do pamięci Realizacja zależności czasowych

Architektura Systemów Komputerowych. Bezpośredni dostęp do pamięci Realizacja zależności czasowych Architektura Systemów Komputerowych Bezpośredni dostęp do pamięci Realizacja zależności czasowych 1 Bezpośredni dostęp do pamięci Bezpośredni dostęp do pamięci (ang: direct memory access - DMA) to transfer

Bardziej szczegółowo

Opis funkcjonalny i architektura. Modu³ sterownika mikroprocesorowego KM535

Opis funkcjonalny i architektura. Modu³ sterownika mikroprocesorowego KM535 Opis funkcjonalny i architektura Modu³ sterownika mikroprocesorowego KM535 Modu³ KM535 jest uniwersalnym systemem mikroprocesorowym do pracy we wszelkiego rodzaju systemach steruj¹cych. Zastosowanie modu³u

Bardziej szczegółowo

Podział układów cyfrowych. rkijanka

Podział układów cyfrowych. rkijanka Podział układów cyfrowych rkijanka W zależności od przyjętego kryterium możemy wyróżnić kilka sposobów podziału układów cyfrowych. Poniżej podam dwa z nich związane ze sposobem funkcjonowania układów cyfrowych

Bardziej szczegółowo

Wykład 4. Przegląd mikrokontrolerów 16-bit: - PIC24 - dspic - MSP430

Wykład 4. Przegląd mikrokontrolerów 16-bit: - PIC24 - dspic - MSP430 Wykład 4 Przegląd mikrokontrolerów 16-bit: - PIC24 - dspic - MSP430 Mikrokontrolery PIC Mikrokontrolery PIC24 Mikrokontrolery PIC24 Rodzina 16-bitowych kontrolerów RISC Podział na dwie podrodziny: PIC24F

Bardziej szczegółowo

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107 Zestaw uruchomieniowy dla mikrokontrolerów STM32F107 STM32Butterfly2 Zestaw STM32Butterfly2 jest platformą sprzętową pozwalającą poznać i przetestować możliwości mikrokontrolerów z rodziny STM32 Connectivity

Bardziej szczegółowo

Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych

Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych B.1. Dostęp do urządzeń komunikacyjnych Sterowniki urządzeń zewnętrznych widziane są przez procesor jako zestawy rejestrów

Bardziej szczegółowo

Cyfrowe układy scalone

Cyfrowe układy scalone Cyfrowe układy scalone Ryszard J. Barczyński, 2012 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego Materiały dydaktyczne do użytku wewnętrznego Publikacja współfinansowana ze środków

Bardziej szczegółowo

Mikroprocesory i Mikrosterowniki

Mikroprocesory i Mikrosterowniki Mikroprocesory i Mikrosterowniki Wykład 1 Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski Na prawach rękopisu. Na podstawie dokumentacji ATmega8535, www.atmel.com. Konsultacje Pn,

Bardziej szczegółowo

Opracował: Jan Front

Opracował: Jan Front Opracował: Jan Front Sterownik PLC PLC (Programowalny Sterownik Logiczny) (ang. Programmable Logic Controller) mikroprocesorowe urządzenie sterujące układami automatyki. PLC wykonuje w sposób cykliczny

Bardziej szczegółowo

Układy czasowo-licznikowe w systemach mikroprocesorowych

Układy czasowo-licznikowe w systemach mikroprocesorowych Układy czasowo-licznikowe w systemach mikroprocesorowych 1 W każdym systemie mikroprocesorowym znajduje zastosowanie układ czasowy lub układ licznikowy Liczba liczników stosowanych w systemie i ich długość

Bardziej szczegółowo

Wykład 2. Przegląd mikrokontrolerów 8-bit: -AVR -PIC

Wykład 2. Przegląd mikrokontrolerów 8-bit: -AVR -PIC Wykład 2 Przegląd mikrokontrolerów 8-bit: -AVR -PIC Mikrokontrolery AVR Mikrokontrolery AVR ATTiny Główne cechy Procesory RISC mało instrukcji, duża częstotliwość zegara Procesory 8-bitowe o uproszczonej

Bardziej szczegółowo

Charakterystyka mikrokontrolerów. Przygotowali: Łukasz Glapiński, Mateusz Kocur, Adam Kokot,

Charakterystyka mikrokontrolerów. Przygotowali: Łukasz Glapiński, Mateusz Kocur, Adam Kokot, Charakterystyka mikrokontrolerów Przygotowali: Łukasz Glapiński, 171021 Mateusz Kocur, 171044 Adam Kokot, 171075 Plan prezentacji Co to jest mikrokontroler? Historia Budowa mikrokontrolera Wykorzystywane

Bardziej szczegółowo

Przerwania, polling, timery - wykład 9

Przerwania, polling, timery - wykład 9 SWB - Przerwania, polling, timery - wykład 9 asz 1 Przerwania, polling, timery - wykład 9 Adam Szmigielski aszmigie@pjwstk.edu.pl SWB - Przerwania, polling, timery - wykład 9 asz 2 Metody obsługi zdarzeń

Bardziej szczegółowo

Architektura komputerów. Układy wejścia-wyjścia komputera

Architektura komputerów. Układy wejścia-wyjścia komputera Architektura komputerów Układy wejścia-wyjścia komputera Wspópraca komputera z urządzeniami zewnętrznymi Integracja urządzeń w systemach: sprzętowa - interfejs programowa - protokół sterujący Interfejs

Bardziej szczegółowo

MIKROPROCESORY architektura i programowanie

MIKROPROCESORY architektura i programowanie Struktura portów (CISC) Port to grupa (zwykle 8) linii wejścia/wyjścia mikrokontrolera o podobnych cechach i funkcjach Większość linii we/wy może pełnić dwie lub trzy rozmaite funkcje. Struktura portu

Bardziej szczegółowo

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie: Zaliczenie Termin zaliczenia: 14.06.2007 Sala IE 415 Termin poprawkowy: >18.06.2007 (informacja na stronie: http://neo.dmcs.p.lodz.pl/tm/index.html) 1 Współpraca procesora z urządzeniami peryferyjnymi

Bardziej szczegółowo

dokument DOK 02-05-12 wersja 1.0 www.arskam.com

dokument DOK 02-05-12 wersja 1.0 www.arskam.com ARS3-RA v.1.0 mikro kod sterownika 8 Linii I/O ze zdalną transmisją kanałem radiowym lub poprzez port UART. Kod przeznaczony dla sprzętu opartego o projekt referencyjny DOK 01-05-12. Opis programowania

Bardziej szczegółowo

Mikrokontroler ATmega32. System przerwań Porty wejścia-wyjścia Układy czasowo-licznikowe

Mikrokontroler ATmega32. System przerwań Porty wejścia-wyjścia Układy czasowo-licznikowe Mikrokontroler ATmega32 System przerwań Porty wejścia-wyjścia Układy czasowo-licznikowe 1 Przerwanie Przerwanie jest inicjowane przez urządzenie zewnętrzne względem mikroprocesora, zgłaszające potrzebę

Bardziej szczegółowo

Zastosowanie procesorów AVR firmy ATMEL w cyfrowych pomiarach częstotliwości

Zastosowanie procesorów AVR firmy ATMEL w cyfrowych pomiarach częstotliwości Politechnika Lubelska Wydział Elektrotechniki i Informatyki PRACA DYPLOMOWA MAGISTERSKA Zastosowanie procesorów AVR firmy ATMEL w cyfrowych pomiarach częstotliwości Marcin Narel Promotor: dr inż. Eligiusz

Bardziej szczegółowo

Budowa Mikrokomputera

Budowa Mikrokomputera Budowa Mikrokomputera Wykład z Podstaw Informatyki dla I roku BO Piotr Mika Podstawowe elementy komputera Procesor Pamięć Magistrala (2/16) Płyta główna (ang. mainboard, motherboard) płyta drukowana komputera,

Bardziej szczegółowo

2. PORTY WEJŚCIA/WYJŚCIA (I/O)

2. PORTY WEJŚCIA/WYJŚCIA (I/O) 2. PORTY WEJŚCIA/WYJŚCIA (I/O) 2.1 WPROWADZENIE Porty I/O mogą pracować w kilku trybach: - przesyłanie cyfrowych danych wejściowych i wyjściowych a także dla wybrane wyprowadzenia: - generacja przerwania

Bardziej szczegółowo

Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy:

Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy: Współpraca mikroprocesora z urządzeniami zewnętrznymi Urządzenia wejścia-wyjścia, urządzenia których zadaniem jest komunikacja komputera z otoczeniem (zwykle bezpośrednio z użytkownikiem). Do najczęściej

Bardziej szczegółowo

Adresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów

Adresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów Adresowanie obiektów Bit - stan pojedynczego sygnału - wejście lub wyjście dyskretne, bit pamięci Bajt - 8 bitów - wartość od -128 do +127 Słowo - 16 bitów - wartość od -32768 do 32767 -wejście lub wyjście

Bardziej szczegółowo

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa... 9. Wstęp... 11

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa... 9. Wstęp... 11 Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1 Spis treúci Przedmowa... 9 Wstęp... 11 1. Komputer PC od zewnątrz... 13 1.1. Elementy zestawu komputerowego... 13 1.2.

Bardziej szczegółowo

Układ wykonawczy, instrukcje i adresowanie. Dariusz Chaberski

Układ wykonawczy, instrukcje i adresowanie. Dariusz Chaberski Układ wykonawczy, instrukcje i adresowanie Dariusz Chaberski System mikroprocesorowy mikroprocesor C A D A D pamięć programu C BIOS dekoder adresów A C 1 C 2 C 3 A D pamięć danych C pamięć operacyjna karta

Bardziej szczegółowo

Wykład I. Podstawowe pojęcia. Studia Podyplomowe INFORMATYKA Architektura komputerów

Wykład I. Podstawowe pojęcia. Studia Podyplomowe INFORMATYKA Architektura komputerów Studia Podyplomowe INFORMATYKA Architektura komputerów Wykład I Podstawowe pojęcia 1, Cyfrowe dane 2 Wewnątrz komputera informacja ma postać fizycznych sygnałów dwuwartościowych (np. dwa poziomy napięcia,

Bardziej szczegółowo

MIKROPROCESORY architektura i programowanie

MIKROPROCESORY architektura i programowanie Systematyczny przegląd. (CISC) SFR umieszczane są w wewnętrznej pamięci danych (80H 0FFH). Adresowanie wyłącznie bezpośrednie. Rejestry o adresach podzielnych przez 8 są też dostępne bitowo. Adres n-tego

Bardziej szczegółowo

Mechatronika i inteligentne systemy produkcyjne. Modelowanie systemów mechatronicznych Platformy przetwarzania danych

Mechatronika i inteligentne systemy produkcyjne. Modelowanie systemów mechatronicznych Platformy przetwarzania danych Mechatronika i inteligentne systemy produkcyjne Modelowanie systemów mechatronicznych Platformy przetwarzania danych 1 Sterowanie procesem oparte na jego modelu u 1 (t) System rzeczywisty x(t) y(t) Tworzenie

Bardziej szczegółowo

Wykład 2. Mikrokontrolery z rdzeniami ARM

Wykład 2. Mikrokontrolery z rdzeniami ARM Wykład 2 Źródło problemu 2 Wstęp Architektura ARM (Advanced RISC Machine, pierwotnie Acorn RISC Machine) jest 32-bitową architekturą (modelem programowym) procesorów typu RISC. Różne wersje procesorów

Bardziej szczegółowo

Wykorzystanie standardu JTAG do programowania i debugowania układów logicznych

Wykorzystanie standardu JTAG do programowania i debugowania układów logicznych Politechnika Śląska w Gliwicach Wydział Automatyki Elektroniki i Informatyki Wykorzystanie standardu JTAG do programowania i debugowania układów logicznych Promotor dr inż. Jacek Loska Wojciech Klimeczko

Bardziej szczegółowo

Podstawy techniki cyfrowej Układy wejścia-wyjścia. mgr inż. Bogdan Pietrzak ZSR CKP Świdwin

Podstawy techniki cyfrowej Układy wejścia-wyjścia. mgr inż. Bogdan Pietrzak ZSR CKP Świdwin Podstawy techniki cyfrowej Układy wejścia-wyjścia mgr inż. Bogdan Pietrzak ZSR CKP Świdwin 1 Układem wejścia-wyjścia nazywamy układ elektroniczny pośredniczący w wymianie informacji pomiędzy procesorem

Bardziej szczegółowo

Programowalne Układy Cyfrowe Laboratorium

Programowalne Układy Cyfrowe Laboratorium Zdjęcie opracowanej na potrzeby prowadzenia laboratorium płytki przedstawiono na Rys.1. i oznaczono na nim najważniejsze elementy: 1) Zasilacz i programator. 2) Układ logiki programowalnej firmy XILINX

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Wykład 3 Jan Kazimirski 1 Podstawowe elementy komputera. Procesor (CPU) 2 Plan wykładu Podstawowe komponenty komputera Procesor CPU Cykl rozkazowy Typy instrukcji Stos Tryby adresowania

Bardziej szczegółowo

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32 ZL15AVR Zestaw uruchomieniowy dla mikrokontrolerów ATmega32 ZL15AVR jest uniwersalnym zestawem uruchomieniowym dla mikrokontrolerów ATmega32 (oraz innych w obudowie 40-wyprowadzeniowej). Dzięki wyposażeniu

Bardziej szczegółowo

Projektowanie. Projektowanie mikroprocesorów

Projektowanie. Projektowanie mikroprocesorów WYKŁAD Projektowanie mikroprocesorów Projektowanie układ adów w cyfrowych - podsumowanie Algebra Boole a Bramki logiczne i przerzutniki Automat skończony System binarny i reprezentacja danych Synteza logiczna

Bardziej szczegółowo

Architektura komputera

Architektura komputera Architektura komputera Architektura systemu komputerowego O tym w jaki sposób komputer wykonuje program i uzyskuje dostęp do pamięci i danych, decyduje architektura systemu komputerowego. Określa ona sposób

Bardziej szczegółowo

Urządzenia zewnętrzne

Urządzenia zewnętrzne Urządzenia zewnętrzne SZYNA ADRESOWA SZYNA DANYCH SZYNA STEROWANIA ZEGAR PROCESOR PAMIĘC UKŁADY WE/WY Centralna jednostka przetw arzająca (CPU) DANE PROGRAMY WYNIKI... URZ. ZEWN. MO NITORY, DRUKARKI, CZYTNIKI,...

Bardziej szczegółowo

Programowanie w językach asemblera i C

Programowanie w językach asemblera i C Programowanie w językach asemblera i C Mariusz NOWAK Programowanie w językach asemblera i C (1) 1 Dodawanie dwóch liczb - program Napisać program, który zsumuje dwie liczby. Wynik dodawania należy wysłać

Bardziej szczegółowo

Mikroprocesory i Mikrosterowniki

Mikroprocesory i Mikrosterowniki Mikroprocesory i Mikrosterowniki Wykład 1 Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski Na prawach rękopisu. Na podstawie dokumentacji ATmega8535, www.atmel.com. Konsultacje Pn,

Bardziej szczegółowo

LITEcompLPC1114. Zestaw ewaluacyjny z mikrokontrolerem LPC1114 (Cortex-M0) Sponsorzy:

LITEcompLPC1114. Zestaw ewaluacyjny z mikrokontrolerem LPC1114 (Cortex-M0) Sponsorzy: LITEcompLPC1114 Zestaw ewaluacyjny z mikrokontrolerem LPC1114 (Cortex-M0) Bezpłatny zestaw dla Czytelników książki Mikrokontrolery LPC1100. Pierwsze kroki LITEcompLPC1114 jest doskonałą platformą mikrokontrolerową

Bardziej szczegółowo

Mikroprocesory i mikrosterowniki

Mikroprocesory i mikrosterowniki Mikroprocesory i mikrosterowniki Wykład 1 wstęp, budowa mikrokontrolera Wydział Elektroniki Mikrosystemów i Fotoniki Na prawach rękopisu. Na podstawie dokumentacji ATmega8535, www.atmel.com. Piotr Markowski

Bardziej szczegółowo

Systemy wbudowane Mikrokontrolery

Systemy wbudowane Mikrokontrolery Systemy wbudowane Mikrokontrolery Budowa i cechy mikrokontrolerów Architektura mikrokontrolerów rodziny AVR 1 Czym jest mikrokontroler? Mikrokontroler jest systemem komputerowym implementowanym w pojedynczym

Bardziej szczegółowo

SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701. SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701.

SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701. SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701. SigmaDSP - zestaw uruchomieniowy. SigmaDSP jest niedrogim zestawem uruchomieniowym dla procesora DSP ADAU1701 z rodziny SigmaDSP firmy Analog Devices, który wraz z programatorem USBi i darmowym środowiskiem

Bardziej szczegółowo

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska Współpraca z układami peryferyjnymi i urządzeniami zewnętrznymi Testowanie programowe (odpytywanie, przeglądanie) System przerwań Testowanie programowe

Bardziej szczegółowo

Budowa systemów komputerowych

Budowa systemów komputerowych Budowa systemów komputerowych Krzysztof Patan Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski k.patan@issi.uz.zgora.pl Współczesny system komputerowy System komputerowy składa

Bardziej szczegółowo

Budowa i zasada działania komputera. dr Artur Bartoszewski

Budowa i zasada działania komputera. dr Artur Bartoszewski Budowa i zasada działania komputera 1 dr Artur Bartoszewski Jednostka arytmetyczno-logiczna 2 Pojęcie systemu mikroprocesorowego Układ cyfrowy: Układy cyfrowe służą do przetwarzania informacji. Do układu

Bardziej szczegółowo

Magistrala. Magistrala (ang. Bus) służy do przekazywania danych, adresów czy instrukcji sterujących w różne miejsca systemu komputerowego.

Magistrala. Magistrala (ang. Bus) służy do przekazywania danych, adresów czy instrukcji sterujących w różne miejsca systemu komputerowego. Plan wykładu Pojęcie magistrali i jej struktura Architektura pamięciowo-centryczna Architektura szynowa Architektury wieloszynowe Współczesne architektury z połączeniami punkt-punkt Magistrala Magistrala

Bardziej szczegółowo

Architektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy

Architektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy Wstęp do informatyki Architektura komputera Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki System komputerowy systemowa (System Bus) Pamięć operacyjna ROM,

Bardziej szczegółowo

Systemy wbudowane. Paweł Pełczyński ppelczynski@swspiz.pl

Systemy wbudowane. Paweł Pełczyński ppelczynski@swspiz.pl Systemy wbudowane Paweł Pełczyński ppelczynski@swspiz.pl 1 Program przedmiotu Wprowadzenie definicja, zastosowania, projektowanie systemów wbudowanych Mikrokontrolery AVR Programowanie mikrokontrolerów

Bardziej szczegółowo

Architektura systemu komputerowego. Działanie systemu komputerowego. Przerwania. Obsługa przerwań (Interrupt Handling)

Architektura systemu komputerowego. Działanie systemu komputerowego. Przerwania. Obsługa przerwań (Interrupt Handling) Struktury systemów komputerowych Architektura systemu komputerowego Działanie systemu komputerowego Struktura we/wy Struktura pamięci Hierarchia pamięci Ochrona sprzętowa Architektura 2.1 2.2 Działanie

Bardziej szczegółowo

Podstawy Techniki Mikroprocesorowej

Podstawy Techniki Mikroprocesorowej Podstawy Techniki Mikroprocesorowej Architektury mikroprocesorów Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski Na prawach rękopisu. Na podstawie dokumentacji ATmega8535, www.atmel.com.

Bardziej szczegółowo

CYKL ROZKAZOWY = 1 lub 2(4) cykle maszynowe

CYKL ROZKAZOWY = 1 lub 2(4) cykle maszynowe MIKROKONTROLER RODZINY MCS 5 Cykl rozkazowy mikrokontrolera rodziny MCS 5 Mikroprocesory rodziny MCS 5 zawierają wewnętrzny generator sygnałów zegarowych ustalający czas trwania cyklu zegarowego Częstotliwość

Bardziej szczegółowo

SML3 październik

SML3 październik SML3 październik 2005 16 06x_EIA232_4 Opis ogólny Moduł zawiera transceiver EIA232 typu MAX242, MAX232 lub podobny, umożliwiający użycie linii RxD, TxD, RTS i CTS interfejsu EIA232 poprzez złącze typu

Bardziej szczegółowo

Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1

Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1 i sieci komputerowe Szymon Wilk Superkomputery 1 1. Superkomputery to komputery o bardzo dużej mocy obliczeniowej. Przeznaczone są do symulacji zjawisk fizycznych prowadzonych głównie w instytucjach badawczych:

Bardziej szczegółowo

Modułowy programowalny przekaźnik czasowy firmy Aniro.

Modułowy programowalny przekaźnik czasowy firmy Aniro. Modułowy programowalny przekaźnik czasowy firmy Aniro. Rynek sterowników programowalnych Sterowniki programowalne PLC od wielu lat są podstawowymi systemami stosowanymi w praktyce przemysłowej i stały

Bardziej szczegółowo

Systemy na Chipie. Robert Czerwiński

Systemy na Chipie. Robert Czerwiński Systemy na Chipie Robert Czerwiński Cel kursu Celem kursu jest zapoznanie słuchaczy ze współczesnymi metodami projektowania cyfrowych układów specjalizowanych, ze szczególnym uwzględnieniem układów logiki

Bardziej szczegółowo

Wprowadzenie do informatyki i użytkowania komputerów. Kodowanie informacji System komputerowy

Wprowadzenie do informatyki i użytkowania komputerów. Kodowanie informacji System komputerowy 1 Wprowadzenie do informatyki i użytkowania komputerów Kodowanie informacji System komputerowy Kodowanie informacji 2 Co to jest? bit, bajt, kod ASCII. Jak działa system komputerowy? Co to jest? pamięć

Bardziej szczegółowo

Architektura systemów komputerowych. dr Artur Bartoszewski

Architektura systemów komputerowych. dr Artur Bartoszewski Architektura systemów komputerowych dr Artur Bartoszewski Układy we/wy jak je widzi procesor? Układy wejścia/wyjścia Układy we/wy (I/O) są kładami pośredniczącymi w wymianie informacji pomiędzy procesorem

Bardziej szczegółowo

Magistrala systemowa (System Bus)

Magistrala systemowa (System Bus) Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki systemowa (System Bus) Pamięć operacyjna ROM, RAM Jednostka centralna Układy we/wy In/Out Wstęp do Informatyki

Bardziej szczegółowo

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja. do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1.

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja. do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1. Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1 PAMIĘCI SZEREGOWE EEPROM Ćwiczenie 3 Opracował: dr inŝ.

Bardziej szczegółowo

Rok akademicki: 2013/2014 Kod: EEL s Punkty ECTS: 2. Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne

Rok akademicki: 2013/2014 Kod: EEL s Punkty ECTS: 2. Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne Nazwa modułu: Technika mikroprocesorowa Rok akademicki: 2013/2014 Kod: EEL-1-616-s Punkty ECTS: 2 Wydział: Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Kierunek: Elektrotechnika Specjalność:

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Tydzień 4 Tryby adresowania i formaty Tryby adresowania Natychmiastowy Bezpośredni Pośredni Rejestrowy Rejestrowy pośredni Z przesunięciem stosowy Argument natychmiastowy Op Rozkaz

Bardziej szczegółowo

METODY ZINTEGROWANEGO PROJEKTOWANIA SPRZĘTU I OPROGRAMOWANIA Z WYKORZYSTANIEM NOWOCZESNYCH UKŁADÓW PROGRAMOWALNYCH

METODY ZINTEGROWANEGO PROJEKTOWANIA SPRZĘTU I OPROGRAMOWANIA Z WYKORZYSTANIEM NOWOCZESNYCH UKŁADÓW PROGRAMOWALNYCH METODY ZINTEGROWANEGO PROJEKTOWANIA SPRZĘTU I OPROGRAMOWANIA Z WYKORZYSTANIEM NOWOCZESNYCH UKŁADÓW PROGRAMOWALNYCH Arkadiusz Bukowiec mgr inż. Agnieszka Węgrzyn Instytut Informatyki i Elektroniki, Uniwersytet

Bardziej szczegółowo

Zestaw uruchomieniowy z mikrokontrolerem LPC1114 i wbudowanym programatorem ISP

Zestaw uruchomieniowy z mikrokontrolerem LPC1114 i wbudowanym programatorem ISP Zestaw uruchomieniowy z mikrokontrolerem LPC1114 i wbudowanym programatorem ISP ZL32ARM ZL32ARM z mikrokontrolerem LPC1114 (rdzeń Cotrex-M0) dzięki wbudowanemu programatorowi jest kompletnym zestawem uruchomieniowym.

Bardziej szczegółowo