MKM opracowanie


1.Definicja mikrokontrolera (w skrócie: mk), dwie najważniejsze cechy jego jednostki centralnej.
-Układ cyfrowy z wyspecjalizowanym mikroprocesorem i niezbędnymi do jego samodzielnej pracy układami zawartymi w jednym układzie
scalonym(dzięki którym nie wymaga zewnętrznych , takich jak np. kontrolery magistrali, przerwań& )
-jest zdolny do autonomicznej pracy, tzn w najprostszych zastosowaniach nie wymaga przyłączenia zewnętrznych układow 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.
MK składa Si z jednostki centralnej, pamieci ,urządzeń peryferyjnych, szyn.
2cechy jednostki centralnej to:
-szerokość szyny danych (8- ,16-,32-bitowa. Określa typ MK)
-częstotliwość sygnału taktującego. (określa przetwarzania danych przez jednostkę centralną. Nie zawsze wieksza prędkość jest lepsza[wymagana]
ponieważ wzrost taktowania równa się z większym poborem mocy. Ważny jest też czas reakcji MK na syg. Zew. Mk nie wykonuje zbyt
skomplikowanych obliczeń, ma rozbudowany system przerwań.
2ð ð ðUszczegółowiona budowa MK oraz funkcje realizowane przez jego bloki.
3ð ðCechy MK .
-zamknięcie magistrali danych i adresowej wewnątrz układu scalonego.
-stała struktura pamięci ROM/RAM.
-stałość programu sterującego.
-dostęp do rejestrów procesora i układów we/wy poprzez mechanizm adresowania pamięci RAM.
-rejestrowa struktura jednostki centralnej.
-procesory boolowskie wykonujące operacje na pojedynczych bitach w pamięci, rejestrach i układach we/wy.
-bogaty zestaw urządzeń we/wy.
-rozbudowane i szybkie układy przerwań.
-różnorodne tryby i środki redukcji poboru mocy.
-rozbudowane mechanizmy kontroli i detekcji nieprawidłowych stanów mk.
-zawarcie w jednej strukturze układów cyfrowych(sterujacych)i analogowych(pomiarowych).
4ð ð ðWÅ‚aÅ›ciwoÅ›ci jednostki centralnej (w skrócie: jc) mk, pojÄ™cia: licznik rozkazów, tryby adresowania.
Działanie JC polega na cyklicznym wykonywaniu operacji według programu będącego w pamięci programu.
Właściwości JC:
-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 taktującego.
-sekwencyjność oznacza, że stan wyjść JC zależy od poprzednich stanów układu.
- posiada własna pamięć potrzebna np. do przechowywania argumentów rozkazów niezbędnych do wykonanie na nich określonej operacji.
Licznik rozkazów jest to rejestr wskazujący(zawierający) adres w pamięci programu spod którego pobierane są instrukcje.
(5 i 6)Tryby adresowania:
- adresowanie implikowane: dotyczy 1-bajtowych 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.
- 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.
- adresowanie bezpośrednie : odnosi się do instrukcji wielobajtowych w których po kodzie rozkazu następuje adres argumentu umieszczonego w
pamięci danych.
- adresowanie indeksowe: polega na sumowaniu zawartości specjalnie przeznaczonego do indeksowania rejestru (rejestr indeksowy) z adresem
bezpośrednim, zapisanym w instrukcji. Obliczony adres fizyczny pamięci bywa nazywany adresem efektywnym . adresowanie przydatne przy
operowaniu blokami danych. Dostęp do innych danych odbywa się po przez zmianę wartości rej. Indeksowego.
-adresowane pośrednie: ma miejsce , gdy część adresowa instrukcji wskazuje na komórkę pamięci zawierającą adres efektywny. Odmiana tego
adresowania jest adresowanie zawartości rejestru, w którym adres efektywny jest zawarty w przeznaczonym do tego celu rejestrze lub parze rejestrów
MK. Identyfikacja po przez słowo rozkazu.
-adresowanie bitowe: dotyczy operacji wykonywanych na pojedynczych bitach w rejestrach, komórkach pamięci i urządzeniach we/wy. Argumentem
jest adres bita.
- adresowanie względne: służy do adresowania pamięci względem adresu aktualnie wykonywanej instrukcji w pamięci programu. Adres jest w
rejestrze nazywanym licznikiem programu(PC- program counter) ,licznikiem rozkazów lub wskaznikiem instrukcji (IP instruction pointer)
Adres efektywny obliczany jako suma zawartości licznika programu i adresu względnego, gdzie adres względny , bedący argumentem instrukcji, np.
zawarty jest w zakresie [-127,+128]
7ð ðCechy architektury harwardzkiej procesorów rdzeniowych mk. ð
-użycie dwóch oddzielnych szyn dla danych i rozkazów, dzięki czemu w trakcie pobierania arg. Wykonywanej właśnie instrukcji można
równocześnie zacząć pobieranie następnego słowa rozkazowego. Skraca to cykl rozkazowy i zwiększa szybkość pracy
-obszary adresowe pamięci danych i programu są rozdzielone. Pociąga to za sobą niejednoznaczność adresów, ponieważ pod tym samym adresem JC
widzi pamięć RAM i ROM. W tym przypadki stosuje się inne rozkazy dla pamięci programu i inne dla pamięci danych.
- ponadto magistrala danych i rozkazów mają różną szerokość .
8ð ð ðModyfikacje architektury harwardzkiej procesorów rdzeniowych mk poprawiajÄ…ce przepÅ‚yw danych
między pamięcią programu a danych.
- szerokości magistrali programu jest krotnością szerokości magistrali danych np. dla PIC18 i MK z rdzeniem AVR magistrala danych jest 8-bitowa, a
program 16.
- wprowadza się dodatkowe bloki pośredniczące w wymianie danych między pamięcią programu a pamięcią danych.
-rozszerza się listę instrukcji o dodatkowe polecenia obsługujące transfer danych z/do pamieci prog.
9ð ð ðCechy architektury Von-Neumanna procesorów rdzeniowych mk.
-jednolita przestrzeń adresowania, w której wszystkie pamięci, rejestry i układy we/wy są umieszczone w jednej wspólnej przestrzeni adresowej. W
arch. tej zakłada się, że czysto umowny i zależy wyłącznie od rozmieszczenia tych elementów w obszarze adresowym podczas projektowania
systemu.
-MK ma jedną szyne danych wspólną dla danych i programu. 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ć użyty typowy
rozkaz adresowy. Tym samym tworzenie tablic nie stanowi problemu.
- w tym rozwiązaniu wykonanie instrukcji wymaga kilku przesłań danych (najpierw bajty z kodem rozkazu, a po nim bajty argumentami) po
magistrali danych co czyni tÄ™ architektura zdecydowanie wolniejszÄ… od harwardzkiej.
1ð0ð ð ðCechy architektury RISC procesorów rdzeniowych mk oraz pojÄ™cie ortogonalnoÅ›ci.
- procesor zbudowany zgodnie z architektura harwardzkÄ….
-procesor wykorzystuje przetwarzanie potokowe w celu zwiększenia szybkości wykonywania programu
-zbiór realizowanych instrukcji jest ograniczony i spełnia warunki ortogonalności
-zastosowanie pamięci FIFO(first In first out) dla przetwarzania potokowego.
Ortogonalność: unifikacja 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 wykorzystać dowolny tryb adresowania.
- nie ma ukrytych związków między instrukcjami, które powodowały by 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.
1ð1ð ð ðCechy architektury CISC procesorów rdzeniowych mk.
Charakteryzuje się rozbudowana 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.
1ð2ð ð ðFunkcje i typy pamiÄ™ci zaimplementowanych w mk.
-Pamięci programu: zawierająca kod programu, tablice stałych, wektor rejestru i wektory przerwań)
-pamięć danych: przechowuje dane.
-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.
1ð3ð ð ðStruktury mk ze wzglÄ™du na sposób korzystania z zewnÄ™trznych pamiÄ™ci.
a) MK udostępniające szyny systemowe poprzez wyprowadzenia portów :
-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ą jest rezygnacja z części portów.
b)MK udostępniające bezpośrednio szyny danych:
-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 zew. bez potrzeby rezygnacji z niektórych
portów
-najczęściej MK te nie posiadają wewnętrznych pamięci programu i danych
-podejście te umożliwia korzystanie ze znacznie większych pamięci. Stąd tego typu struktura jest stosowana przeważnie dla
MK 16 i 32-bitowych
c)MK zamknięte:
-w tej strukturze systemu szyny systemowe nie są dostępne dla użytkownika. MK korzysta wyłącznie z wewnętrznej pamięci. Oczywiście
można do niego podłączyć zewnętrzne urządzenia peryferyjne poprzez porty. Tego typu struktura jest stosowana w prostych 8 bitowych
MK.
1ð4ð ð ðZalety zamkniÄ™cia magistrali wewnÄ…trz mk.
-Zwiększenie niezawodności: magistrala jest czuła na zakłócenia, zamkniecie jej wewnątrz i odseparowanie od zacisków we/wy powoduje wzrost
niezawodności. Procesor rdzeniowy ma przez to bardzo dobra izolację od pozostałej części systemu. Następuje zmniejszenie i ograniczenie długości
magistrali co ma znaczenie ze względu na rosnące wymagania kompatybilności.
-zmniejszenie poboru mocy: magistrala uniwersalna jest bardzo energochłonna. Bez względu na ilość odbieranych informacji , musi ją nadać zawsze
w takiej samej formie fiz żeby mogły ją odebrać wszystkie podłączone odbiorniki. Ograniczenie dostępu do magistrali znanej liczby urządzeń o
określonych parametrach pozwala na przeprowadzenie optymalizacji energoczasowej czego efektem jest spadek pobieranej mocy.
-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
osiaganie dużych szybkości wykonywania programu bez znaczącego wzrostu poboru mocy.
- zmniejszenie ilości zacisków zew. i zwiększenie ich elastyczności: zadaniem zacisków zew. jest zapewnienie przepływu sygnałów pomiędzy
otoczeniem a układem we-wy wbudowanym 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
1ð5ð ð ðWarstwowy model mk zamkniÄ™tego.
1ð6ð ð ðMetody generacji sygnaÅ‚u zegarowego w mk.
Sygnał zegarowy generowany  wewnątrz mk
Sygnał zegarowy generowany z wykorzystaniem zewnętrznych elementów .
metody:
-z rezonatorem kwarcowym/ceramicznym.
-z rezonatorem RC(tani ale najgorszy)
-z podaniem zewnętrznego syg. Prostokątnego na wejścia OSC1
- z wewnętrznym rezonatorem RC
-z wykorzystaniem pośredniej syntezy częstotliwości PLL
17 ð ðTechniki redukcji pobieranej mocy w mk i tryby specjalne pracy mk.
a)Redukcja mocy :
- elastyczne sterowanie szybkością pracy w zależności od aktualnych potrzeb, gdyż zależność poboru mocy układu CMOS zależy od
częstotliwości pracy. Służy do tego sieć dystrybucji sygnałów zegarowych w mk.
-zastosowanie 2 oscylatorów. Jeden pracuje z maksymalna częstotliwością- główny oscylator (np. 40MHz), drugi z częstotliwością niską
np32,8 kHz. Przejście z wysokiej do niskiej częstotliwości powoduje spadek pobieranej mocy o około 3 rzędy
b)tryby pracy: [dla VDD=5V fosc=16MHz]
-tryb RUN pełnej aktywności (RUN): [8MHz I=6mA]
-tryb SLEEP / WAIT tryb uśpienia w którym nie pracuje procesor, a pracują wszystkie urządzenia peryferyjne
Tryb w którym nie pracuje procesor, a pracują niektóre urządzenia peryferyjne(ukł. Przerwań, porty, przetworniki zasilane
zewnętrznym sygnałem zegarowym.)[3mA]
-tryb STOP / HALT 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  .[10uA]
1ð8ð ðSposoby wejÅ›cia i wyjÅ›cia z poszczególnych trybów specjalnych pracy mk.
a)Wejścia w tryb pracy:
-wykonujÄ…c odpowiedniÄ…, przeznaczonÄ… do tego celu instrukcjÄ™ (np. Steep, halt)
-ustawiajÄ…c odpowiednie bity
b)wyjścia z trybu uspienia
-pojawienie się przerwania zewnętrznego lub przerwania od urządzeń peryferyjnych
-reset zewnętrzny mk.
-reset wywołany przez niezablokowany, aktualnie pracujący układ watchdog.
c) wyjście ze stanu zatrzymania
-reset zewnętrzny
-Reset wywołany przez niezablokowany aktualnie pracujący układ Watchdog taktowany własnym generatorem
1ð9ð ðPrzeznaczenia sygnaÅ‚u RESET z zródÅ‚a sygnaÅ‚u RESET w mk.
a) sygnał reset służy to :
- generalnie do inicjalizacji pracy mk, czyli wprowadzenie go w stan poczÄ…tkowy.
- inicjacja polega najczęściej na ustawienia licznika rozkazów na początek kodu programu.
-urzÄ…dzenia peryferyjne mk i rejestry sterujÄ…ce sÄ… ustawiane w tryb standardowy(spoczynku)
uniwersalne koocówki we/wy są ustawiane jako wejścia o wysokiej impedancji, aby minimalnie wpływad na otoczenie mk( informacje o
stanie portów w dokumentacji)
-ponadto służy on do wprowadzenia mk w tryb programowania lub testu.
Dla niektórych mk po resecie czytany jest rejestr ustawiający tryb pracy, poziomy sygnałów na koocówkach i ustawia początek kodu
b) zródła sygnału reset
-reset po włączeniu zasilania
-reset wywołany zewnętrznym sygnałem RESET
- reset programowy wywołany przez wykonanie instrukcji reset lub ustawienia odpowiedniego bita.
- reset wywołany przez układ watchdog,
-reset wywołany przez układ nadzorujący poprawnośd pracy MK (wykrywajacy np. spadek zasilania)
2ð0ð ð ðPrzeznaczenie i zasada pracy licznika watchdog w mk.
Układ ten jest licznikiem zasilanym z własnego oscylatora RC lub oscylatora kwarcowego. 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 odpowiednie instrukcje(CLRWDT) które należy umieścic w nieskończonej pentli
programu.
DOPISAC ZASADE DZIALANIA
2ð1ð ð ðGeneralny schemat obsÅ‚ugi przerwania w mk.
-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, zawartość licznika rozkazów i
wszystkie dane zwiÄ…zane z aktualnie wykonywanie programu.
-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 wykonywanie przerwanego programu.
2ð2ð ð ðCechy systemu przerwaÅ„ z programowym przeglÄ…daniem urzÄ…dzeÅ„ w mk.
-JC nie zna zródła przerwania. Zatem JC musi programowo przejrzeć(przepytać) flagi przerwań wszystkich urządzeń tak, jak przy programowym
testowaniu stanu urządzeń, z ta różnicą, iż wykonuje ona te czynność tylko w trakcie obsługi przerwań.
-flagi poszczególnych przerwań nie są kasowane sprzętowo przy wejściu w obsługę przerwania , zatem należy je kasować programowo w trakcie jego
obsługi.
-najczęściej obsługa wszystkich przerwań jest pod jednym wspólnym adresem, zwanym wektorem przerwań.
- kolejność priorytety przerwań zależy od przyjętej kolejności odpytywania flag przerwań poszczególnych urządzeń.
Prosta struktura sprzętowa potrzebna do jego realizacji. Jego Głowna wada to długi czas potrzebny na identyfikacje przerwania.
2ð3ð ð ðCechy systemu przerwaÅ„ wektoryzowanych w mk.
-na sygnał potwierdzający przyjęcia przerwania przez JC urządzenie, które zgłosiło przerwanie , podaje na szynę danych kod identyfikacyjny , który
jest taktowany jako numer elementu w wektorze przerwań. Wektor przerwań reprezentuje listę adresów obsługi przerwań.
-zatem każde zródło przerwań ma przypisany adres obsługi przerwań w pamięci programu., zwany wektorem przerwaia.
- każdemu przerwaniu jest przypisany na stałe priorytet. Jeżeli pojawi się w tym samym czasie kilka przerwań to najpierw obsługiwane będzie to z
najwyższym. Często przerwanie o wyższym priorytecie może przerwać obsługę przerwania o niższym . istnieje równiej możliwość zmiany kolejności
priorytetów.
-wejście w obsługę danego przerwania zeruje sprzętowo jego flagę.
2ð4ð ð ðBudowa i zasada dziaÅ‚ania linii portów równolegÅ‚ych.
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
ð
25 Właściwości układów peryferyjnych mk.
-są programowalne- zadaniami przekazywane są im do wykonania odpowiednimi rozkazami, dokładniej mówiąc przez ustawiania odpowiednich
bitów w rejestrach konfiguracyjnych przez wpisanie danych do rejestrów danych.
-charakteryzują się dużym stopniem autonomii w stosunku do procesora rdzeniowego. Przekazane im zadania wykonywane są samodzielnie, bez
zaangażowania czasu procesora.
-od strony procesora układy we/wy programowane są za pośrednictwem magistrali wewnętrznej. Układom tym zazwyczaj przypisywane są:
-rejestry robocze
-rejestry konfiguracyjne/sterujące służące do konfiguracji i sterowania urządzeniem peryferyjnym.
-rejestry statusu zawierające aktualny stan urządzenia: flagi przerwań komunikaty o błędach.
- o zakończeniu wykonywana zadań procesor informowany jest odpowiedniego bitu w rejestrze stanu urządzenia lub wysyłaniem sygnału żądania
przerwania o ile jest ono odblokowane
26 Schematyczna budowa układu czasowego w mk oraz jego zasada pracy w dwóch podstawowych konfiguracjach
.
27 Schemat blokowy i zasada działania licznika w mk w konfiguracji rejestratora zdarzeń.
28 Schemat blokowy i zasada działania licznika w mk w konfiguracji programowalnego generatora
impulsów.
29 Schemat blokowy i zasada działania licznika w mk w konfiguracji generatora PWM.
30 Budowa, zasada działania i typowe parametry wewnętrznego przetwornika A/C w mk.
31 Schemat blokowy, parametry i zasada działania komparatora analogowego w mk.
32 Sterowanie oraz sposób odczytu i zapisu danych do wewnętrznej pamięci EEPROM.
a) sterowanie odbywa się za pośrednictwem rejestrów:
-rejestr sterujący , w którym uruchamia się procedurę odczytu i zapisu do pamięci.
-rejestr danych przechowującego daną, która ma być wpisana pod adres wskazany przez rejestr danych lub zawiera daną odczytaną spod
wybranego rejestru
-jednego lub dwóch rejestrów adresu zawierających adres komórki pamięci EEPROM, na której będzie wykonana operacja
zapisu/odczytu.
b) zapis :
-czekamy aż zakończy się poprzedni cykl zapisu (zapis trwa od 2ms do 4), testując flagę informacji o zakończeniu zapisu
-do rejestru adresu wpisuje się adres bajtu w pamięci EEPROM, do którego chcemy wpisać daną,
- do rejestru danych wprowadzamy naszÄ… danÄ…
-odblokowujemy zapis do pamięci EEPROM ustawiając odpowiedni bit lub wykonując odpowiednią sekwencję wpisów do rejestrów
sterujÄ…cych
-ustawiamy bit uruchamiajÄ…cy proces zapisu do EEPROM
c)odczyt
-do rejestru adresu wpisuje się adres bajtu w pamięci EEPROM, spod którego chcemy pobrać daną.
-ustawiamy bit uruchamiajÄ…cy proces odczytu w rejestrze sterujÄ…cym.
-czekamy, aż ustawi się flaga informacji o zakończeniu odczytu
-w rejestr danych znajduje siÄ™ nasza dana
33 Schematyczna budowa sterownika komunikacji szeregowej w mk oraz realizowane przez niego
funkcje.
34 Format danych dla standardu UART, budowa kontrolera interfejsu UART oraz ogólna jego
obsługa.
a) format danych :
-transmisja zaczyna siÄ™ od bitu startu
-po którym następuje osiem bitów danych(czasem 9, gdzie 9-ty jest najczęściej bitem parzystości)
-jednego bitu stopu
35 Sposób łączenia za pomocą interfejsu SPI układów typu master i slave.
36 Procedury wymiany danych za pomocÄ… interfejsu SPI dla trybu master i trybu slave.
a) Master:
-najpierw należy odpowiednio skonfigurować interfejs SPI mk: tryb Master poprawnie skonfigurowane piny interfejsu (SCK=wyjscie),
ustawić częstotliwość sygnału zegara.
-urządzenia peryferyjne musi być przygotowane do odbioru danych, najczęściej służy do tego dodatkowa linia mk podłączona do wejścia
CS urzÄ…dzenia peryferyjnego
-aby rozpocząć transmisję wpisuje się daną do rejestru przesuwnego .
- po czym czeka się na zakończenie transmisji, testując flagę informacji o zakończenie transmisji lub czeka się na przerwanie od układu
SPI
- na zakończenie z rejestru przesuwnego można odczytać daną odebraną.
b) Slave
-najpierw należy odpowiednio skonfigurować interfejs SPI mk: tryb Slave poprawnie skonfigurowane piny interfejsu (SCK=wyjscie),
-następnie wpisuje się daną którą chcemy wysłać do rejestru przesuwnego.
-jeśli jest to wymagane, ustawia się odpowiedni bit w rejestrze sterującym SIP włączający interfejs.
- urządzenie peryferyjne musi być aktywne i pracować w trybie MASTER.
-po czym czeka Si e na zakończenie transmisji, które wywołuje przerwanie.
- na zakończenie z rejestru przesuwnego można odczytać daną odebraną.
37 Przebiegi czasowe interfejsu SPI.
38 Budowa kontrolera interfejsu SPI w mk i znaczenie linii interfejsu SPI w mk.
SPI składa się z
-bloku z 8-bitowym rejestrem przesuwnym danych,
-rejestrem kontrolnym
-rejestrem statusowym
-współpracującego z układem sterującym interfejsem SPI
- generatora sygnału zegarowego uruchamianego w trybie MASTER
- prostego układu generacji żądania przerwania korzystającego z maski przerwania zawartej w rejestrze kontrolnym i flag przerwań z rejestru statusu.
39 Przebiegi czasowe sekwencji inicjalizacji, wysyłania i odbierania bitów dla standardu interfejsu 1-Wire.
Protokół wymiany danych składa się z 4 podstawowych sekwencji inicjowanych przez układ master.
1. Inicjalizacja (zerowanie magistrali)  realizowana przez układ master,
2. Wysyłanie(zapis do układu podrzędnego)  zera przez układ master,
3. Wysyłanie(zapis do układu podrzędnego)  jedynki przez układ master,
4. Odczyt bita przez układ master z układu podrzędnego.
Rys 2.68. Sekwencja inicjalizacji rozpoczyna się wysłaniem impulsu zerującego (stan niski) przez 480 us poprzez układ master, następnie master
przechodzi w fazę odbioru i pojawia się stan wysoki. Po rozkmienieniu końca impulsu zerującego slave czeka 15-60 us wystawia impuls obecnosci(
tak sobie gadaja) przez 60-240 mikro sekund (czyli znowu spada do niskiego). Przez ta sekwencje master wie jakie uklady ma podpiete i może zaczac
siÄ™ z nimi komunikowac.
Rys 2.69 Transmisja danych polega na generowaniu przez mastera impulsów o stanie niskim, o odpowiednim czasie trwania. Długość sekwencji musi
zmieścić się w szczelinie czasowej 60-120 us. Nadanie 0 logicznego polega na wygenerowaniu przez układ master impulsu o czasie 60-120 us, a
nastepnie zwolnieniu magistrali i zaczekaniu 1us przed kolejnym bitem. Natomiast 1 logiczna to impuls o dlugosci 1-15 us , a nastepnie przerwie 60
us.
40. Właściwości interfejsu CAN oraz grupy układów obsługujących interfejs CAN.
Właściwości CAN
- asynchroniczny, half-duplex
- struktura otwarta (możliwość dołączania nowych węzłów na zasadzie zwarty iloczyn, minimum to 2 węzły, liczba węzłów nie ma wpływu na
działanie, dynamiczne manipulowanie węzłami np. odłączanie uznanych na niesprawne)
- tylko jedna linia transmisyjna(para skręconych przewodów, CAN_H, CAN_L)
- konfiguracja liniowa( nie ma pętli, po obu stronach dołącza się rezystory),
- szyna w stanie recesywnym przy braku sterowania (czyli stan logiczny  1 )
- dane przesyłane metodą NRZ (non return to zero)
- adresy odbiorników są integralną częścią przekazu( najnowsze identyfikatory są 29 bitowe, więc współpraca do około 536 milionów węzłów)
Grupy układów obsługujących interfejs CAN:
- układy nadawczo-odbiorcze,
- kontrolery (współpraca z mikrokontrolerami, mikroprocesorami)
- mikrokontroler z zaimplementowanym kontrolerem CAN.
41. Połączenie między urządzeniami z interfejsem USB, znaczenie linii interfejsu USB i sposoby zasilania urządzeń z interfejsem USB.
Przy łączeniu urządzeń przyjęto topologię gwiazdową, host połączony jest z jednym hubem, do którego na zasadzie drzewa można dołączyć
kolejne huby lub urządzenia. Pozwala to na współpracę wielu urządzeń poprzez wyspecjalizowane Huby. System wygodny dla urzytkownika,
urzÄ…dzenie samo siÄ™ identyfikuje, automatycznie konfiguruje sterowniki, rejestruje siÄ™ w systemie, proste i znormalizowane okablowanie.
Znaczenie linii: Podstawowym elementem jest Hub, do którego dołącza się urządzenia i hosta, a magistrala ma 4 linie
Vbus  przewód zasilania (5V Czerwony)
D+ - przewód symetrycznej skrętki sygnałowej (zielony)
D- - przewód symetrycznej skrętki sygnałowej (żółty bądz biały)
GND  masa (czarny)
Sposoby zasilania urządzeń:
-zasilanie pobieranie wyłącznie z interfejsu USB,
- urządzenia z własnym zasilaniem
- urządzenia z podwójnym zasilaniem
Ograniczeniem jest maksymalny prąd linii zasilania Vbus (500 mA), linia ta pozwala także wyprowadzić jak i wprowadzić i wyprowadzić
urządzenia w stan oczekiwania, w którym pobór prądu musi być mniejszy niż 500 mA, w przypadku gdy urządzenie wymaga więcej niż 500
mA musi być wyposażone w dodatkowy moduł zasilania.
42. Budowa linii równoległego interfejsu PSP w mk oraz sposób zapisu i odczytu do/z interfejsu PSP przez zewnętrzne urządzenie.
Interfejs PSP pozwala na podłącznie bezpośrednie portu mikrokontrolera do magistrali danych, sterowanej przez inny mk (nadrzędny) i zapis
asynchroniczny(sygnał WR) lub odczyt (RD). Czyli port równoległy w trybie PSP pracuje jak 8 bitowy rejestr, do którego wpisuje się bajt za pomocą
sygnału WR(write), w ten sposób można wygenerować także przerwanie.
1. Zapis do interfejsu  obie linia WR i CS w stanie niskim, jeśli te linie przejdą w stan wysoki bit IBF w rejestrze TRISE jest ustawiany w
cyklu Q4 zegara, aby zasygnalizować, że zapis do rej. Danych został dokonany. W tym samym cyklu zegara Q4 jest równierz ustawiana
flaga przerwania PSPIF. Bit IBF można wyzerować wyłącznie przez odczyt zawartości rejestru danych portu D. Bit IBOV w rejestrze
TRISE zostaje ustawiony, gdy nastąpi próba zapisu bajtu do rejestru danych, który zawiera nie odczytaną jeszcze daną.
2. Odczyt z interfejsu PSP  obie linie RD i CS są w stanie niskim. Flaga OBF w rej. TRISE jest natychmiast zerowana, aby wskazać, iż
następuje odczyt bajtu z rejestru danych portu D przez zewnętrzne urządzenie. Kiedy na obu liniach pojawi się stan wysoki w czwartym
cyklu zegara Q4 zostaje ustawiona flaga przerwania PSPIF informująca o zakończeniu odczytu. Bit OBF jest równy zeru dopóki nie
nastÄ…pi wpis bajtu do rejestru danych.
43. Pojęcie rodziny mk. Modyfikacje członków rodziny mk.
Rodzina mk  grupa mikrokontrolerów, w skład której wchodzą mk o różnych parametrach i urządzeniach peryferyjnych, ale zachowujących
kompatybilność programową tzn posiadają ten sam procesor rdzeniowy, czyli tą samą listę instrukcji.
Modyfikacje
Poziom jednostki centralnej : rozmiar pamięci programu, rozmiar pamięci RAM, maksymalna szybkość pracy
Poziom urządzeń peryferyjnych: podstawowy wyróżnik danego typu mikrokontrolerów
Poziom warst zacisków zewnętrznych i typu obudowy (parametry elektryczne zacisków oraz typu obudowy)
44. Definicja programowania zagnieżdżonego i cechy programów zagnieżdżonych.
robak
45. Struktura programu użytkownika na mk.
Nie ma
46. Zalety programowania w języku asemblera dla elektronicznych systemów wbudowanych.
robak
47. Cykl projektowania i uruchamiania programu napisanego na mk.
robak
48. Rozszerzenia języka C oraz zalecenia dotyczące pisania programów w języku C na mk.
Rozszerzenia
-nowe typy zmiennych, np. zmienne bitowe, przy deklaracji zmiennych możliwy jest wybór allokacji w okreslonym miejscu przestrzeni adresowej,
wprowadzone nowe słowa kluczowe
Zalecenia
- wydzielać fragmenty kodu odpowiedzialne za obsługę specyficznych układów peryferyjnych
- typy zmiennych deklarować przez słowo kluczowe  typdef
-alokacji zmiennych nie dokonywać bezpośrednio przy deklaracji zmiennych, lecz za pomocą dyrektyw preprocesora, gł. Przez użycie tzw. Modelu
pamięci
- alokacja funkcji służących do obsługi przerwań odbywa się w oddzielonym zbiorze, często napisanym w asemblerze.
49. Metody uruchamiania programów napisanych na mk.
Uruchamianie programów jest eliminacją błędów i wprowadzaniem zmian do programu użytkowego w celu uzyskania bezbłędnej i zgodnej z
założeniami pracy systemu w danym zastosowaniu.
Główny podział metod uruchamiania: bez wykorzystania systemu docelowego i z jego wykorzystaniem. W ramach pierwszej grupy stosowana jest
jedna metoda. Symulatora programowego mikrokontrolera(symulacja pracy mk, a bardziej rozbudowane układów peryferyjnych , nie trzeba
dysponować fizycznym systemem, oraz na podstawie obserwacji można wprowadzić korekty jeszcze przed jego wykonaniem , wadą jest to, iż nie
daje to całkowitej gwarancji poprawności działania)
Grupa z wykorzystaniem systemu docelowego: metoda prób i błędów(programowanie i obserwacja). Monitory programowe i programy śledzące
(debuggers  najczęściej stosowane, przyłączone na komputrze PC). Monitory instalowane w pamięci programu mk i kontrolują właściwie
wykonywanie programu i komunikują się przez złącze szeregowe. Emulator sprzętowy polegające na dołaczenie sondy połączonej ze specjalnym
układem sprzętowym, który emuluje działanie mk. Wykorzystanie specjalnych zasobów mk, tylko niektóre mikrokontrolery, głównie 32 bitowe
wspierają proces uruchomieniowy. Umożliwiają zastawianie pułapek i pracę krokową, komunikacja poprzez dedykowane wyprowadzenia mk.
Dostępny jedynie w momencie uruchomienia programu.
50. Procedura szeregowego programowania pamięci programu mk w systemie docelowym.
51. Sposoby programowania szeregowego pamięci programu mk w systemie docelowym ze względu na używany interfejs szeregowy.


Wyszukiwarka

Podobne podstrony:
Elektroenergetyka opracowanie1
przetworniki II opracowane
Mechanika Techniczna I Opracowanie 06
Marketing Opracowane Pytania Egzaminacyjne 2009 Furtak (46)
grice opracowaniE Cooperative Principle, Maxims of Conversation
lipidy opracowanie z ÅšUM (1)
Pytania opracowane na Matysiaka (1)
biotech opracowanie 1

więcej podobnych podstron