wykl_cz1.pdf

(1554 KB) Pobierz
1
Wykład
Mikrokontrolery
i Mikrosystemy
autor: dr inż. Zbigniew Czaja
Gdańsk 2005
Mikrokontrolery i Mikrosystemy
2
Spis treści
1. Wprowadzenie.................................................................................................................... 5
2. Mikrokontrolery.................................................................................................................7
2.1. Jednostka centralna.......................................................................................................9
2.1.1. Architektury procesorów rdzeniowych mk...........................................................10
2.2. Pamięci......................................................................................................................... 15
2.3. Struktury mikrokontrolerów......................................................................................... 16
2.4. Elementy składowe procesora rdzeniowego.................................................................20
2.4.1. Oscylator i dystrybucja sygnałów zegarowych..................................................... 20
2.4.2. Techniki redukcji mocy i tryby specjalne mk....................................................... 23
2.4.3. Reset mk................................................................................................................26
2.4.4. Układy nadzorujące - układ watchdog..................................................................28
2.4.5. System przerwań...................................................................................................30
2.5. Porty równoległe mk - warstwa multiplekserów i zacisków we/wy.............................33
2.6. Wewnętrzne urządzenia peryferyjne mk...................................................................... 36
2.6.1. Układy licznikowe/czasowe..................................................................................37
2.6.2. Przetworniki analogowo-cyfrowe (A/C) ..............................................................43
2.6.3. Komparatory analogowe.......................................................................................46
2.6.4. Wewnętrzna pamięć EEPROM.............................................................................47
2.6.5. Sterowniki komunikacji szeregowej.....................................................................49
2.6.5.1. Interfejs UART..............................................................................................50
2.6.5.2. Interfejs SPI...................................................................................................56
2.6.5.3. Interfejs 1-Wire............................................................................................. 61
2.6.5.4. Interfejs I 2 C....................................................................................................64
2.6.5.5. Interfejs CAN................................................................................................ 67
2.6.5.6. Interfejs USB.................................................................................................68
2.6.6. Interfejs równoległy typu paraller slave port.........................................................69
2.7. Typy obudów mk..........................................................................................................71
2.8. Programowanie mk.......................................................................................................72
2.8.1. Programowanie w języku asemblera.....................................................................74
2.8.2. Programowanie w językach wyższego poziomu...................................................76
2.8.3. Uruchamianie programu mk................................................................................. 77
28840880.001.png
Mikrokontrolery i Mikrosystemy
3
2.8.4. Sposoby programowania mk z pamiecią FLASH.................................................78
2.8.4.1. Tryb programowania równoległego.............................................................. 78
2.8.4.2. Tryb programowania szeregowego (ISP)......................................................80
2.9. Rodziny mk...................................................................................................................84
3. Układy scalone pamięciowe...............................................................................................88
3.1. 8-bitowy rejestr zatrzaskujący 74HC574......................................................................89
3.2. Pamięć SRAM 128kB.................................................................................................. 91
3.3. Pamięć FLASH 128kB................................................................................................. 94
4. Programowalne układy logiczne.....................................................................................100
4.1. Układy logiczne SPLD na przykładzie układu GAL16V8.........................................101
4.2. Układy logiczne CPLD na przykładzie rodziny układów XC9500 firmy Xilinx....... 107
5. Układy peryferyjne z interfejsem szeregowym standardu SPI....................................116
5.1. Szeregowe pamięci EEPROM....................................................................................117
5.1.1. Szeregowe pamięci EEPROM z interfejsem SPI................................................118
5.1.2. Szeregowe pamięci EEPROM z interfejsem Microwire.....................................125
5.2. Zewnętrzne przetworniki analogowo-cyfrowe (A/C).................................................131
5.2.1. Zewnętrzny przetwornik A/C pracujący na zasadzie SAR................................. 131
5.2.2. Zewnętrzny przetwornik A/C typu signa-delta................................................... 136
5.3. Zewnętrzne przetworniki cyfrowo- analogowe (C/A)................................................145
5.3.1. Pojedynczy przetwornik C/A.............................................................................. 149
5.3.2. Wielokanałowy przetwornik C/A....................................................................... 136
5.4. Cyfrowe potencjometry sterowane interfejsem SPI....................................................159
5.5. Programowalne generatory sterowane interfejsem SPI.............................................. 166
5.6. Programowalne czujniki temperatury z interfejsem SPI.............................................172
5.7. Klucze analogowe sterowane interfejsem SPI............................................................174
5.7.1. Układy z kluczami PSPT.................................................................................... 175
5.7.2. Układy z matrycami przełączającymi................................................................. 177
6. Bibliografia........................................................................................................................180
6.1. Literatura podstawowa............................................................................................... 180
6.2. Dokumentacja w postaci plików PDF........................................................................180
28840880.002.png
Mikrokontrolery i Mikrosystemy
4
1. Wprowadzenie
Rys. 1.1. 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.
28840880.003.png
Mikrokontrolery i Mikrosystemy
5
magistrale równoległe – równoległe porty we/wy, opcjonalnie magistrale danych i
adresowe,
mikrointerfejsy szeregowe – SPI, I 2 C, 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.
28840880.004.png
Zgłoś jeśli naruszono regulamin