A&Q PYTANIA I ODPOWIEDZI Z MIKROKONTROLERÓW

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

Download "A&Q PYTANIA I ODPOWIEDZI Z MIKROKONTROLERÓW"

Transkrypt

1 A&Q PYTANIA I ODPOWIEDZI Z MIKROKONTROLERÓW KŁ ZSP4 2012

2 Czym jest mikrokontroler? Mikrokontrolery są układami sekwencyjnymi, synchronicznymi, tzn. wszystkie operacje wykonywane przez układy procesora odbywają się w określonej kolejności i w ściśle określonych momentach czasowych. Dlatego muszą współpracować z generatorami impulsów zegarowych. Układy mikroprocesorowe korzystają najczęściej z generatorów zewnętrznych. Natomiast mikrokontrolery mają wewnętrzny generator, do którego dołącza się z zewnątrz albo tylko sam rezonator kwarcowy lub ceramiczny oraz dodatkowo dwa kondensatory, ułatwiające wzbudzenie się generatora na pożądanej częstotliwości. W większości mikrokontrolerów praca generatora może być zatrzymana odpowiednim rozkazem, co powoduje zatrzymanie działania wszystkich elementów mikrokontrolera. Ma to na celu zredukowanie do minimum prądu zasilania, np. w momencie awarii sieci zasilającej. momentu osiągnięcia założonej częstotliwości. Czas ten wynosi na ogół około 10 ms. Ponieważ po włączeniu zasilania układy wewnętrzne mikrokontrolera przyjmują stan dowolny, dlatego musi istnieć możliwość wymuszenia na mikroprocesorze powtarzalnych stanów początkowych wszystkich jego rejestrów. W komputerach służy do tego przycisk RESET. Mikroprocesory posiadają wejście (RST), na które jeżeli poda się odpowiedni sygnał, to nastąpi wymuszenie stanów początkowych rejestrów wewnętrznych. Ponieważ stan początkowy procesora musi być ustalony po włączeniu zasilania, to do tego wejścia dołącza się układ czasowy RC, który wymusza, na wymagany odcinek czasu, sygnał zerujący. W większości mikrokontrolerów, np. w mikrokontrolerach rodziny '51 wykonanych w technologii CMOS rezystor jest umieszczony wewnątrz układu. Sygnałem tym, w zależności od typu mikrokontrolera może być poziom zera logicznego (masa układu), jak na przykład w mikrokontrolerach 80C515 lub poziom jedynki logicznej (zasilanie) jak w mikrokontrolerach W większości układów mikroprocesorowych stosuje się przełączniki, dołączone do linii RST, do ręcznego zerowania procesorów. Daje to możliwość uruchomienia od początku programu procesora, np. w przypadku testowania lub zawieszania się programu procesora. Podstawową jednostką określającą czas wykonywania instrukcji jest cykl maszynowy. Dla rodziny mikrokontrolerów '51 składa się on z sześciu stanów, oznaczonych od S1 do S6, z których każdy dzieli się na dwie fazy P1 i P2. Czas trwania jednej fazy jest równy okresowi oscylatora. Wynika stąd, że czas trwania cyklu maszynowego jest 12 razy dłuższy od okresu oscylatora. W każdym stanie cyklu maszynowego są realizowane pewne podstawowe procedury związane z wykonywaniem rozkazów. Rozkazy są pobierane z pamięci wewnętrznej lub zewnętrznej mikrokontrolera spod adresu wskazywanego przez licznik rozkazów (PC). Rozkazy mogą być jedno lub wielobajtowe, a czas ich wykonywania może trwać jeden lub kilka cykli maszynowych. W rodzinie '51 występują rozkazy jedno, dwu i trójbajtowe, które są wykonywane w jednym, dwóch lub czterech cyklach maszynowych. Pobranie pierwszego bajtu rozkazu odbywa się zawsze w takcie S1. 1. Wymień najbardziej znanych producentów mikrokontrolerów. - Microchip, ze swoją rodziną: jednoukładowców PIC... - Motorola, lansująca układy 8, 16 i 32-bitowych mikrokontrolerów jednoukładowych - Intel, produkujący bodaj najbardziej popularne procesory serii Zilog, producent nowoczesnych kontrolerów jednoukładowych następców poczciwego Z80 (wykorzystywanego w produkcji sędziwego ZX81, ZX Spectrum) - SGS-Thompson z rodziną ST62. - Philips, - Siemesa - Dallas - Atmel, 2. Ile wyprowadzeń liczy układ 8051 i które z nich pełnią role portów? Wszystkich końcówek jest 40 Końcówki 1..8 (Port P1) Końcówki (Port P2) Końcówki o numerach (Port P3) Końcówki o numerach (Port P0)

3 3. Jakie funkcje pełni port P0 i czym się różni od P1 i P2? Podstawowe funkcje portu jako dwukierunkowej bramy do wymiany danych są takie same jak w przypadku portów P1 i P2. Zasadniczą różnicą jest jednak zwiększona obciążalność (do 8 wejść TTL) tego portu oraz fakt nie posiadanie wbudowanych rezystorów podciągających końcówki portu do plusa zasilania w przypadku odczytu. Dlatego przy projektowaniu dowolnych układów wyjściowych dołączanych do tego portu należy uwzględnić wspomniane wartości tak, aby np. odpowiednio spolaryzować bazy tranzystorów. Drugą bardzo ważną rolą, jaką pełni P0, jest funkcja multipleksowanej magistrali danych (8-bitów:D7...D0) i młodszej części adresu (A7...A0). multipleksowanej w praktyce znaczy przełączalnej, czyli raz na końcówkach portu P0 procesor może wystawić bajt danych (np. do zapisu do wewnętrznej pamięci danych), w innym przypadku adres, w celu wybrania potrzebnej komórki z pamięci SRAM, do której ma być zapisana. 4. Jakie funkcje pełni port P1 i P2? Port P1 może pełnić rolę wyjścia informacji binarnej. Tak więc, jeżeli zachodzi potrzeba, procesor może np. wpisać do portu P1 dowolną liczbę binarną z zakresu , np. 48. Binarnie liczba 48 = b. Oznaczenie poszczególnych końcówek portu P1 wskazują na kolejną pozycje bitu (cyfry liczby binarnej),. Port (cały lub niektóre z jego pinów), podobnie jak przy zapisie, można ustawić także jako wejście informacji logicznej. Każde z wyprowadzeń staje się wtedy wyjściem o wysokiej impedancji dzięki temu dowolny poziom logiczny podany z wyjścia jakiegoś układu cyfrowego może być odczytany poprzez piny portu a informacja czy tym stanem była logiczna 1 czy 0, zostaje wykorzystana przez procesor dla dalszego jego działania w zależności od spełnianej funkcji. Krótko mówiąc, procesor może odczytać stany logiczne, jakie z zewnątrz podano na końcówki portu. Poziomy logiczne napięć wejściowych portu P1 (oraz dla każdego innego ) muszą zawierać się w przedziale napięć zasilania mikrokontrolera, czyli w zakresie 0...5V. Detekcja poziomów logicznych odbywa się jak dla bramek CMOS, stąd wartości progowe napięć tych stanów są zbliżone do połowy napięcia zasilającego. Istotną informacją jest fakt że w trybie odczytu z portu P1 końcówki są wewnętrznie podczepiane (podciągane )do plusa zasilania poprzez wbudowane w 8051 rezystory, co wymusza odczyt wysoki z portu w wypadku nie podłączenia końcówki poru. Port P2 spełnia wszystkie funkcje podobnie jak P1. Dodatkowo poprzez końcówki portu P2 podawana jest w razie potrzeby starsza część adresu (A8...A15) przy dostępie do zewnętrznej pamięci danych (SRAM) a także programu (np. EPROM). 5. Jakie funkcje pełni port P3? Podobnie jak w przypadku portu P1, port P3 może pełnić wszystkie opisane wcześniej funkcje może być wyjściem lub wejściem. Port P3 spełnia dodatkowe funkcje. Piny P3.0 (RXD) i P3.1 (TXD) mogą pełnić rolę portu transmisji szeregowej. W praktyce poprzez te dwa wyprowadzenia można przesyłać informację (bajty i bity) z i do procesora z innych układów cyfrowych w sposób szeregowy, tzn. bit po bicie. Przesyłanie to może odbywać się na kilka sposobów: - synchronicznie wtedy pin P3.0 pełni role dwukierunkowej magistrali szeregowej, po której przesyłane są dane, zaś pin P3.1 generuje sygnał taktujący, pełniąc rolę zegara. - asynchronicznie kiedy z góry zadajemy prędkość transmisji pomiędzy naszym układem np. łączem RS232c komputera PC. W takim przypadku końcówka P3.0 RxD pełni rolę odbiornika przesyłanych szeregowo danych (R oznacza receive odbiór), zaś końcówka P3.1 TxD nadajnika (T-transmitt nadawanie). Ponadto rozróżnia się kilka trybów pracy asynchronicznej. Alternatywą funkcji końcówek P3.2 (INT0) oraz P3.3 (INT1) jest funkcja detekcji przerwań zewnętrznych. Pojęcie przerwania w tym przypadku odnosi się do zmiany stany logicznego z 1 na 0. W efekcie we wnętrzu procesora 8051zostaje ustawiona tak zwana flaga (nazywana także jako znacznik zgłoszenia przerwania, co w odniesieniu do techniki cyfrowej można wyobrazić sobie jako przerzutnik). Konsekwencją tego jest automatyczne przerwanie wykonywania przez procesor programu i natychmiastowe przejście do wykonania czynności ściśle określonych przez programistę. Ciąg takich czynności nazywany jest w technice mikroprocesorowej: procedurą obsługi przerwania. Wykrycie zmiany stanu logicznego na końcówkach przerwań INT0 i INT1 wiąże się ze spełnieniem jednego warunku, a mianowicie, aby czas od wspomnianego ujemnego zbocza sygnału zgłoszenia przerwania do ponownego przejścia w stan wysoki był odpowiedni długi. Podobnie jak w przypadku warunku sygnału RST, czas ten zależy od częstotliwości zegara mikroprocesora. Końcówki (P3.4 i P3.5) oznaczone jako T0 i T1 pełnią dodatkową funkcję wejść uniwersalnych, programowanych liczników, wbudowanych w strukturę Procesor zawiera dwa bliźniacze liczniki T0 i T1. Maksymalnie mogą one zliczać do 2 16 =65536, po czym zostają wyzerowane. Liczniki te oprócz zliczania impulsów z wejść T0 i T1 mogą także zliczać impulsy wewnętrzne, pochodzące z generatora mikrokontrolera. W praktyce wykorzystywane jest to np. do odmierzania określonych odcinków czasu np. przy funkcji zegarka. Liczniki mogą być programowane przez użytkownika, a więc można np. zmniejszyć pojemność (do 28 lub 213), można także zapisać w nich wartość początkową, zatrzymać je w dowolnym momencie lub uruchomić. Pin WR jest sygnałem zapisu do zewnętrznej pamięci danych, a końcówka RD wysyła sygnał do odczytu.

4 6. Z jakimi częstotliwościami zegara może pracować MC 8051 i w jaki sposób można ustawiać tę częstotliwość? W praktyce częstotliwość ta może wynosić od 1,2MHz do MHz na rynku spotyka się także wersje procesorów pracujące przy wyższych częstotliwościach nawet do 40MHz, a także przy niskich nawet do pojedynczych herców w wypadku procesorów 8051 w wersji statycznej (np. 89C51 firmy Atmel). Końcówki 18 i 19 (XTAL1 i XTAL2) służą do dołączenia zewnętrznego rezonatora kwarcowego o częstotliwości zależnej od potrzeb użytkownika, ale także od wersji układu Dołączony do tych pinów rezonator kwarcowy po uzupełnieniu o dodatkowe kondensatory o wartości z reguły z przedziału pF (w zależności od wartości rezonatora), umożliwiają pracę wbudowanemu w 8051 generatorowi, który napędza cały mikroprocesor. Oczywiście od częstotliwości rezonatora ściśle zależy szybkość działania naszego mikrokontrolera. Częstotliwość, z jaką pracują wewnętrzne układy mikroprocesora, jest określona wzorem: F F xtal 12 gdzie F xtal jest częstotliwością rezonatora kwarcowego. Powodem takiego podziału częstotliwości rezonatora jest wewnętrzna architektura wszystkich procesorów serii Końcówka XTAL1 (pin19) w układach w wersji CMOS może także pełnić rolę wejścia zewnętrznego sygnału zegarowego o częstotliwości w zakresie, jak opisano w przypadku stosowania rezonatora kwarcowego. Wtedy rezonator i dodatkowe kondensatory są zbędne. W przypadku gdy mamy do czynienia z wersją w technologii HMOS wejściem takiego sygnału jest XTAL2 (pin 18). W obu przypadkach pozostały pin powinien być nie podłączony. 7. Jakim napięciem jest zasilany układ 8051 i jaka jest jego wielkość max? Do zasilania mikrokontrolera służy końcówka 40. Napięcie względem końcówki Vss (czyli masy) z reguły nie może przekroczyć 6,5V. Dlatego układ mikrokontrolera należy zasilać napięciem 5V±0,25V używając do tego celu dowolnego zasilacza stabilizowanego. Zasadą przy projektowaniu układów z 8051 jest blokowanie tego wyprowadzenia kondensatorem o wartości 100nF do masy układu cyfrowego. Praktycznie na płytce drukowanej należy zawsze przewidzieć miejsce na taki kondensator umieszczając go jak najbliżej samego układu procesora lub po prostu przylutowując go od strony wyprowadzeń na płytce drukowanej. Masę układu dołącza się do końcówki 20 (Vss). Podobnie jak w większości układów cyfrowych ostatnie wyprowadzenie w dolnym rzędzie obudowy jest końcówką ujemnego napięcia zasilającego masy (GND). W przypadku układów CMOS podaje się oznaczenie Vss co oznacza biegun ujemny napięcia zasilającego. W większości zastosowań pin 40 dołączany jest do masy przyszłego układu elektronicznego. 8. Krótko scharakteryzuj działanie stosu w układzie Jak w każdym komputerze także i w mikrokontrolerach rodziny '51 do wywoływania podprogramu przy przejściu do wykonywania innego podprogramu tworzony jest stos. Stosem jest wydzielony fragment wewnętrznej pamięci RAM adresowany wskaźnikiem stosu SP. Kolejność odczytu bajtów ze stosu jest odwrotna w stosunku do kolejności ich zapisywania, zgodnie z regułą pamięci LIFO. Bezpośrednio dostępne są tylko bajty adresowane przez wskaźnik stosu SP znajdujące się na wierzchołku stosu, a nie w jego wnętrzu. Sytuację tę można porównać do sterty książek ułożonych jedna na drugiej. Dokładając kolejną książkę umieszcza się ją na szczycie sterty. Zabierając książkę ze sterty zabiera się książkę leżącą na jej szczycie. Książki leżące we wnętrzu sterty nie są dostępne. Stos używany jest do zapamiętywania adresów powrotu z podprogramów wywołanych programowo lub sprzętowo (przez przerwania), przenoszenia zmiennych między programami, czasowej ochrony rejestrów specjalnych i komórek wewnętrznej pamięci RAM jeśli są one zmieniane w trakcie wykonywania podprogramów. Najprościej stos można określić jako bardzo prostą w działaniu strukturę przechowującą bajty. Pod pojęciem przechowywania rozumiemy oczywiście operację zapisu a następnie odczytu dowolnej zmiennej lub rejestru SFR. W przypadku takich operacji tylko z udziałem np. wewnętrznej pamięci danych użytkownika, aby dokonać zapisu (odczytu) musisz daną komórkę pamięci najpierw zaadresować - czyli po prostu podać jej fizyczny adres. W przypadku korzystania ze stosu adresowanie jest niekonieczne. Przy takim sposobie obsługi konieczne jest jednak zachowanie

5 odpowiedniej kolejności w zapisie i odczycie tak aby nasze cenne dane nie "pomieszały się". Otóż taki uporządkowany sposób przechowywania danych charakteryzuje właśnie stos. Jak widać wszystkie dane (bajty) przy zapisie odkładane są "na stos" jedna na drugą. Na wierzchołku stosu znajduje się zawsze ostatnio odłożona dana (w naszym przykładzie oznaczona jako X), toteż aby "dobrać się" do danej leżącej pod nią (Y) należy najpierw "zdjąć" ze stosu daną X, a potem dopiero odczytać Y. Można to porównać do stosu talerzy ustawionych jeden nad drugim. Odkładamy talerze na stos i zdejmujemy ze stosu. Nie możemy wyjąć talerza "z głębi" stosu - dostajemy się do niego dopiero po zdjęciu wszystkich stojących na nim. "Po co jednak jest ten "stos", czy nie jest to tylko niepotrzebna komplikacja"? Otóż struktura ta spełnia niezmiernie ważną rolę podczas wykonywania programu przez mikroprocesor. Po pierwsze: stos służy do przechowywania zmiennych lub rejestrów SFR. Po drugie: dostęp do nich (zmiennych) odbywa się w sposób uporządkowany. Stos umieszczony jest w wewnętrznej pamięci danych użytkownika, czyli w obszarze o adresach 00h...7Fh. Jak wynika z rysunku ilość tej pamięci zajętej przez stos będzie się zmieniać i zależeć od tego ile bajtów odłożyliśmy na ten stos. Aby ściśle określić miejsce położenia stosu, w architekturze 8051 znajduje się tzw. licznik stosu, a fachowo mówiąc "wskaźnik stosu". Fizycznie jest on po prostu 8-bajtowym rejestrem w obszarze SFR, położonym pod adresem 81h. W mnemonice (nazewnictwie) procesorów MCS-51 posiada on symbol SP (z ang. "Stack Pointer") - wskaźnik stosu. Jego zadaniem jest automatyczne wskazywanie miejsca aktualnego wierzchołka stosu. Tak więc w przypadku odłożenia bajtu na stos, wskaźnik SP jest automatycznie zwiększany o 1. W przypadku zdjęcia danej ze stosu jest on zmniejszany. Sytuację tą wyjaśnia poniższy rysunek: Stos jest więc hierarchiczną strukturą do przechowywania danych (bajtów) z obszaru wewnętrznej pamięci RAM (włączając SFR) a położenie jego wierzchołka jednoznacznie określa jego wskaźnik SP. Przy korzystaniu ze stosu obowiązuje zasada, "ile bajtów odłożyłeś na stos, tyle potem musisz zdjąć", tak aby struktura stosu nie została zakłócona. W praktyce ma to szczególne znaczenie, bowiem stos wykorzystywany jest nie tylko poprzez świadome działanie użytkownika lecz także przechowywane są na nim ważne dla działania całego mikrokontrolera adresy powrotów z podprocedur oraz z procedur oraz obsługi przerwań, czyli innymi słowy mówiąc, aktualne zawartości 16-bitowego licznika rozkazów PC. Stos jednak składa się z 8-bitowych komórek, a licznik rozkazów jest 16-bitowy. Aby rozwiązać ten problem procesor na stos odkłada się najpierw młodszy bajt rejestru PC, a następnie starszy bajt, wskaźnik stosu zostaje więc zwiększony automatycznie o 2. Tak więc w prosty sposób można przechować inne rejestry podwójne np. wskaźnik adresu zewnętrznej pamięci DPTR, składający się z dwóch 8-bitowych rejestrów DPH (adresy 83h) oraz DPL (adres 82h). W przypadku rejestru DPTR jak i innych SFR przechowywanie na stosie odbywa się "na żądanie" użytkownika. Teraz jeszcze kilka informacji. Otóż po wyłączeniu zasilania procesora (lub jego resecie) wskaźnik stosu przyjmuje domyślnie wartość 07h - czyli po prostu 7, wskazując tym samym, że wierzchołek stosu - adres umieszczenia następnej danej - po odłożeniu jej na stos położony będzie w wewnętrznej pamięci danych pod adresem 08h (07h + 1 zgodnie z opisaną wcześniej zasadą). Jeśli więc odłożymy jakiś bajt na stos, najpierw licznik SP zostanie automatycznie zwiększony o 1, a następnie do komórki o adresie 08h, zostanie wpisany ten bajt. Przy zdjęciu ze stosu kolejność będzie odwrotna, najpierw zdjęty zostanie nasz bajt, a następnie zmniejszony zostanie wskaźnik SP o 1.

6 Wskaźnik stosu SP tak jak każdy rejestr SFR może być dowolnie modyfikowany przez programistę poprzez zapisanie na nim dowolnej 8-bitowej wartości (0..255). W praktyce jednak sytuacja tak występuje tylko wtedy, jeżeli chcemy zmienić położenie stosu (czyli go przesunąć) na początku wykonywania programu. Operacja ta z oczywistych względów ma sens jeżeli stos w danej chwili jest "pusty", w przeciwnym razie przy lekkomyślnej modyfikacji wskaźnika SP wszystkie dane odłożone wcześniej na stos staną się niedostępne (przynajmniej z punktu działania samego stosu). I tak jeżeli chcesz wykorzystywać wewnętrzną. pamięć danych o adresach 08h..20h dla swoich potrzeb (a nie na stos), musisz na początku swego programu zmodyfikować wskaźnik SP wpisując do niego wartość np. 20h, co jest jednoznaczne z zawiadomieniem procesora, że stos ma rozpoczynać się od adresu 21h. Pamiętajmy zatem o stosie jako ważnej strukturze w architekturze 8051 oraz o tym, że tylko umiejętne i świadome z niego korzystanie przynosi efekty w postaci znacznego przyspieszenia działania programu oraz zmniejszenia jego rozmiarów. 9. Jakie funkcje pełni wewnętrzna pamięć danych układu 8051 i jaka jest jej wielkość? Wewnętrzna pamięć danych W mikrokontrolerze wewnętrzna pamięć danych przeznaczona jest dla użytkownika do przechowywania argumentów wartości zmiennych oraz wyników obliczeń arytmetyczno logicznych. W zależności od typu mikrokontrolera pamięć ta ma pojemność 128 lub 256 bajtów. Dla 8051 wynosi ona 128B ( B). 10. Opisz przestrzeń adresową mikrokontrolera W przestrzeni adresowej można wyróżnić kilka obszarów. Dwa główne, to obszar pamięci użytkowej, oraz rejestrów specjalnych SFR. Pamięć użytkowa zajmuje 128 komórek, adresy (00h 7Fh), natomiast obszar SFR obejmuje adresy (80h FFh), z tym że nie wszystkie są wykorzystane przez rejestry specjalne. I chociaż pamięć użytkownika podzielona jest na obszar, do których dostęp może odbywać się przez tzw. indeksowanie obszaru, to użytkownik może adresować ją poprzez proste adresowanie. W pamięci użytkowej komórki o adresach 0..7, 8..15, i tworzą cztery zbiory uniwersalnych rejestrów roboczych. Każdy z rejestrów oznacza się symbolami R0...R7. W danej chwili użytkownik ma możliwość dostępu (poprzez nazwy R0...R7) tylko do jednego banku (zbioru) rejestrów roboczych. Przełączanie zbiorów odbywa się poprzez odpowiednie ustawienie dwubitowego wskaźnika zwanego jako RS z angielskiego Register bank Swich. Rejestry R0 i R1 z aktywnego banku pełnią rolę wskaźników danych do pośredniego adresowania wewnętrznej pamięci danych jak i zewnętrznej. W przypadku adresowania pamięci wewnętrznej można adresować cały obszar 8051 czyli adresy 0...7Fh. 11. Jaka może być wielkość zewnętrznej pamięci danych i jakie układy są tu najczęściej stosowane? Do podłączenia zewnętrznej pamięci danych używa się zwykle pamięci statycznych SRAM o ośmiobitowej organizacji danych i adresowaniu równoległym. Do kontrolerów serii 51 można dołączyć maksymalnie 64kB zewnętrznej pamięci danych. Można więc w takim przypadku zastosować: 2 kostki 6256 (2 x 32kB = 64kB) lub 8 kostek 6264 (8 x 8kB = 64kB) lub 32 kostki 6116 (32 x 2kB = 64kB). SRAM są niepraktyczne, po pierwsze ze względu na ilość układów scalonych co prowadzi do zwiększenia płytki drukowanej, po drugie pojawia się konieczność stosowania dodatkowego dekodera adresu (np. układu serii TTL-LS typ 74LS138 dekoder 1 z 8).

7 12. Jak zmienia się wykorzystanie portów mikrokontrolera w przypadku stosowania zewnętrznej pamięci danych? Zastosowanie zewnętrznej pamięci tak programu jak i danych wiąże się ze zubożeniem typowej jednoukładowości mikrokontrolera, bowiem zajęte zostają porty P0 i P2 procesora. O ile w przypadku pracy z zewnętrzną pamięcią programu dzieje się tak zawsze: port P0 pracuje jako multipleksowana (na zmianę) szyna danych lub młodszej części adresu, a port P2 wystawia starsze 8 bitów 16-bitowego adresu, o tyle w przypadku pracy z zewnętrzną pamięcią danych ( bez zewnętrznej pamięci programu) istnieje możliwość oszczędniejszego gospodarowania portami procesora. Procesor przy odczycie lub zapisie... wystawia 16-bitowy adres (A0...A15).... Do tego potrzebne są 2 porty, które w takim przypadku nie nadają się do dodatkowego wykorzystania, jako np. wyjścia sterowania przekaźnikami, lub czymkolwiek innym. Istnieje jednak możliwość innego odczytu zewnętrznej pamięci danych, nazywana stronicowaniem. Ma ona zastosowanie szczególnie wtedy, kiedy zewnętrzna pamięć danych ma mniejszy rozmiar od maksymalnej przestrzeni adresowej procesora np. 2kB. Pamięć taka ma tylko 11 linii adresowych (A0...A10), co pozwala na zaadresowanie 2048 komórek pamięci (bajtów). Tak więc pozostałe linie adresowe procesora A11.A15 pozostałyby niewykorzystane gdyby zastosować odczyt jak w poprzednim przypadku z pełnym adresem A0...A15. Przy stronicowanym sposobie obsługi zewnętrznej pamięci danych, procesor wystawia tylko młodszą część 16- bitowego adresu (linie AD0...AD7), zaś port P2 pozostaje nietknięte. W konsekwencji takiego sposobu obsługi możliwe będzie zaadresowanie tylko 256 bajtów (2 do potęgi 8 = 256) tej pamięci, a nie jak w naszym przykładzie aż 2kB. No tak, chyba że przed odczytem przez procesor, sami, za pomocą sygnałów A8...A10 (wystawionych poprzez 3 piny portu P0) ustawimy niejako fizyczny adres 256 bajtowej strony adresowanej pamięci. Zauważmy przecież że za pomocą tych trzech końcówek można zaadresować 8 stron po 256 bajtów każda co w sumie da nam do dyspozycji pełne 2048 bajtów, czyli 2kB. Zauważmy też że, co najważniejsze, pozostałe końcówki portu P2 pozostają wolne i możemy je dowolnie wykorzystać jako wejścia lub wyjścia cyfrowe. W celu rozróżnienia przedstawionych dwóch typów adresowania wprowadzone są dwie różne instrukcje procesora, których używa programista podczas projektowania układu i pisania programu, w zależności od potrzeb. Połączenie mikrokontrolera z zewnętrznymi pamięciami

8 13. Wyjaśnij sposób tworzenia rejestrów R0 R7, wykorzystywanych do adresowania pośredniego. W 128-bitowym segmencie wewnętrznej pamięci RAM o adresach od 0 do 7Fh rozmieszczone są rejestry R0 i R1, które wykorzystywane są przy adresowaniu pośrednim. Oprócz nich konstruktorzy mikrokontrolera dali użytkownikom do dyspozycji 6 następnych rejestrów oznaczonych kolejnymi symbolami cyfrowymi: R2, R3, R4, R5, R6, R7. W ten sposób mamy w mikrokontrolerze 8 rejestrów. 14. Co to są banki rejestrów? Banki rejestrów tworzy osiem rejestrów (R0,.., R7). Takich banków mamy 4 oznaczonych symbolami RB0 (bank numer 0),.., RB3 (bank numer 3). Z powyższego rysunku wynika, że wszystkie banki rejestrów rozmieszczone są w początkowym obszarze wewnętrznej pamięci RAM mikrokontrolera. Oznacz to, że do każdego z rejestrów możemy odwołać się przez: podanie jego symbolu i numeru banku rejestrów, np. rejestr R7 w banku RB1 podanie adresu komórki wewnętrznej pamięci RAM, np. adres 0Fh dla tego samego rejestru. Pomimo, że mamy do dyspozycji 4 banki rejestrów, każdy po 8 rejestrów (łącznie 32 rejestry), to tylko programowy dostęp przez podanie symbolu rejestru możliwy jest tylko do jednego, wybranego banku. Po sprzętowym zerowaniu procesora (linią RTS) wybrany jest jako domyślny bank RB0, tzn. rejestry R0,..,R7 o adresach od 0 do 7. Adresując bezpośrednio zewnętrzną pamięć RAM w zakresie 0..1F dostępne są wszystkie 32 rejestry (traktowane jako komórki pamięci). Poza rejestrami R0,..R7 wszystkie inne rejestry, np. akumulator A, rejestr B, rejestr słowa statusowego PSW, itd., znajdują się w bloku, segmencie rejestrów specjalnych SFR. Jeśli w mikrokontrolerach rodziny '51 przewidziano 4 banki rejestrów (RB0,.., RB3) to oznacza to, że wystarczą 2 bity do określenia numerów banków. Te dwa bity oznaczone symbolami RS0 i RS1 (Register Select) znajdują się w rejestrze słowa statusowego PSW. Kodowanie numeru banku rejestrów za pomocą bitów RS1 i RS0 jest binarne, tzn.: RS1,RS0=00b oznacza zerowy bank rejestrów RB0; RS1,RS0=11b oznacza trzeci bank rejestrów RB3.

9 15. Wyjaśnij, w jaki sposób adresowana jest zewnętrzna pamięć danych RAM. Zewnętrzna pamięć danych RAM, jeśli istnieje potrzeba jej dołączenia do mikrokontrolera wskutek zbyt małej wewnętrznej pamięci RAM, adresowana jest w dwojaki sposób: 1. Wskaźnikowy rejestr danych DPTR: Instrukcja: zapis binarny instrukcji: Wykonywana operacja b (DPTR)XDATA A MOVX A,@DPTR b A (DPTR)XDATA Jest to standardowy sposób odwoływania się do pamięci. 16-bitowy wskaźnikowy rejestr danych DPTR zawiera pełny 16-bitowy adres komórek pamięci. Ponieważ rejestr ten tworzą dwa połączone rejestry: DPH jako 8-bitowa, bardziej znacząca część rejestru DPTR; DPL jako 8-bitowa, mniej znacząca część rejestru DPTR. W trakcie adresowania komórek pamięci stan obu rejestrów pojawia się na liniach portu P0 (stan rejestru DPL) i P2 (stan rejestru DPH), tak jak przedstawiono na rysunku. Multipleksowanie stanu obu portów realizowane jest dynamicznie, tylko na czas wykonywanej instrukcji. Adresowanie zewnętrznej pamięci RAM za pośrednictwem wskaźnikowego rejestru danych DPTR 2. Zawartością portu P2 i rejestru R0 lub R1: instrukcja zapis binarny instrukcji wykonywana operacja b (256*P2+R0)XDATA A MOVX A,@R b A (256*P2+R0)XDATA b (256*P2+R1)XDATA A MOVX A,@R b A (256*P2+R1)XDATA Składnia instrukcji jest trochę myląca. Wynika z niej bezpośrednio, że do adresowania zewnętrznej pamięci RAM używany jest tylko jeden z rejestrów mikrokontrolera, R0 lub R1. Oba rejestry są rejestrami 8-bitowymi,a do zaadresowania pamięci wymagany jest adres 16-bitowy. W trakcie wykonywania jednej z czterech przedstawionych instrukcji na liniach portu P0 pojawia się zawartość rejestru R0 lub R1 (8 mniej znaczących bitów adresu) ale stan portu P2 nie ulega zmianie. Oznacza to, że przed wykonaniem instrukcji należy wpisać do portu P2 8-bardziej znaczących bitów adresowanej komórki zewnętrznej pamięci RAM Przykładowo do zapisu akumulatora A do komórki pamięci adresie 3C58h należy wykonywać poniższe instrukcje: MOV R0,#58h ;R0-58H MOVX P2,#3cH ;P2-3Ch W każdej linii tego krótkiego programu pojawił się po znaku średnika (;) komentarz, który ma wyjaśnić, pomóc w zrozumieniu działania programu. W trakcie asemblacji wszystkie komentarze (od znaku średnika do końca wiersza ) są pomijane. Oba przedstawione sposoby adresowania zewnętrznej pamięci RAM określane są mianem adresowania pośredniego. We wszystkich trybach takiego adresowanie, za pośrednictwem jakiegoś rejestru, przed nazwą rejestru pojawia się Znak ten świadczy, że adres komórki pamięci podany jest w bezpośrednio po znaku występującym rejestrze, np.: w instrukcji MOVX A,@DPTR adres komórki podany jest w rejestrze DPTR w instrukcji rejestr R1 zawiera część adresu komórki zewnętrznej pamięci RAM, 8-mniej znaczących bitów adresu. Pozostałą część adresu, 8-bardziej znaczących bitów, zawiera port P2.

10 16. Jaka jest podstawowa składnia instrukcji (rozkazu)? Najpowszechniejszym rozkazem są rozkazy, instrukcje przesłań, których składnia jest następująca: Skrót instrukcji MOV pochodzi od słowa "MOVE" czyli przesunięcia, ruszenia czegoś z miejsca. W rozkazie tym użyto tylko dwóch argumentów. Pierwszy (dst) do określenia komórki pamięci lub rejestru specjalnego SFR, do których ma być przesunięta dana. Drugi (scr) także do określania adresu komórki pamięci lub rejestru specjalnego, z których ma być pobrana dana. Kolejność argumentów jest bardzo ważna. W instrukcjach 2-argumentowych jako pierwszy występuje zawsze adres docelowy, a jako drugi adres źródłowy. W innych instrukcjach liczba argumentów zmienia się od jednego do trzech, w zależności od realizowanej funkcji. 17. Co to jest asemblacja? Program zawierający mnemoniki wykonywanych instrukcji jest czytelny dla człowieka. Jeśli te same instrukcje mają być zrozumiałe dla mikrokontrolera, to muszą zostać przetłumaczone na ciąg zero-jedynkowy. Proces tłumaczenia i kodowania nazw instrukcji i ich argumentów nazywany jest asemblacją. Wynika z tego, że program będący ciągiem poleceń tłumaczony jest na kod wynikowy za pośrednictwem programu zwanego asemblerem. Przytoczona powyżej instrukcja MOV 4Ah,8 zmieniona zostaje na trzy bajty w postaci: 18. Na czym polega różnica między mikrokontrolerami w wersji 8051, 8052, 8751, 8752, 89C51, 89C52? posiada tylko 128B pamięci wewnętrznej, pamięć zewnętrzną dołącza się w postaci układów dodatkowych KB, KB, KB posiada 256B pamięci wewnętrznej, pamięć zewnętrzna jw , 89C51 pamięć wewnętrzna jw., dodatkowo ma wbudowaną pamięć zewnętrzną o wielkości 4KB , 89C52 jw. Ale ma 8KB pamięci zewnętrznej 19. Scharakteryzuj konfiguracje współpracy procesora z wewnętrzną i zewnętrzną pamięcią programu? Procesor może pracować w następujących konfiguracjach: - tylko z wewnętrzną pamięcią programu (dla kostek 8751,8752) - z wewnętrzną i zewnętrzną pamięcią programu jednocześnie, w tym przypadku zewnętrzna pamięć programu stanowi jak gdyby przedłużenie pamięci wewnętrznej - tylko z zewnętrzną pamięcią programu np. typu EPROM. Pierwszy tryb jest bardzo wygodny, pozwala na pełne wykorzystanie wszystkich zalet mikrokontrolera jednoukładowego w całym tego słowa znaczeniu. Programista wykorzystując procesor w wersji z wbudowaną pamięcią programu (8751,8951,xx52) cały kod swego programu umieszcza wewnątrz kości, dzięki czemu ma do dyspozycji wszystkie porty mikrokontrolera w tym także P0 i P2. Kostka 87C51 (89C51) ma tylko 4kB (8x52 8kB pamięci programu), najczęściej te tylko w zupełności wystarcza, lecz zdarza się że jest to za mało, wtedy konieczne jest dołączenie dodatkowej zewnętrznej pamięci programu w postaci kostki EPROM. W tym przypadku maksymalna długość programu równa wielkości obu pamięci zewnętrznej jak i wewnętrznej nie może przekroczyć 64kB czyli bitowych słów. Czyli że np. kostki 87C52 (zawierającej 8 kb wewnętrznej EPROM) można dołączyć maksymalnie 56kB EPROM z zewnątrz. Trzeci tryb pracy tylko z zewnętrzną pamięcią programu wymaga zwarcia wyprowadzenia EA (pin 31 procesora 8051/52) do masy. 20. Wyjaśnij jakie typ układów kryją się pod symbolami: 8051, 8052, 8751, 8752, 2764, 6116, 6264, 6256, 74LS138? mikrokontroler 128B wewnętrznej RAM mikrokontroler 256B wewnętrznej RAM , 89C51 - mikrokontroler 128B wewnętrznej RAM i wbudowane 4KB zewnętrznej RAM , 89C52 - mikrokontroler 256B wewnętrznej RAM i wbudowane 8KB zewnętrznej RAM - 27C64 kość RAM o pojemności 8KB kość SRAM o pojemności 2KB kość SRAM o pojemności 8KB

11 kość SRAM o pojemności 32KB - 74LS138 dekoder 1 z 8-74HCT573(74573) 8-bitowy bufor 21. Co to jest adresowanie pośrednie, podaj przykład instrukcji zawierającej taki sposób adresowania. Adresowanie pośrednie polega na wykorzystaniu zawartości jakiegoś rejestru np. DPTR jako argumentu rozkazu.. Przy tym sposobie adresowania przed nazwą rejestru stosuje się Obecność tego znaku oznacza, że adres komórki pamięci podany jest w rejestrze, którego nazwa podana jest bezpośrednio po Przykład takiego adresowania: - MOVX A,@DPTR adres komórki podany jest w rejestrze DPTR; - rejestr R1 zawiera część adresu komórki zewnętrzne pamięci RAM, 8 mniej znaczących bitów adresu. Pozostałą część adresu, 8 bardziej znaczących bitów, zawiera port P2 22. Scharakteryzuj sposób adresowania zewnętrznej RAM za pomocą wskaźnikowego rejestru danych DPTR. Instrukcja: zapis binarny instrukcji: Wykonywana operacja b (DPTR)XDATA A MOVX A,@DPTR b A (DPTR)XDATA Jest to standardowy sposób odwoływania się do pamięci. 16-bitowy wskaźnikowy rejestr danych DPTR zawiera pełny 16-bitowy adres komórek pamięci. Ponieważ rejestr ten tworzą dwa połączone rejestry: DPH jako 8-bitowa, bardziej znacząca część rejestru DPTR; DPL jako 8-bitowa, mniej znacząca część rejestru DPTR. W trakcie adresowania komórek pamięci stan obu rejestrów pojawia się na liniach portu P0 (stan rejestru DPL) i P2 (stan rejestru DPH), tak jak przedstawiono na rysunku. Multipleksowanie stanu obu portów realizowane jest dynamicznie, tylko na czas wykonywanej instrukcji. Adresowanie zewnętrznej pamięci RAM za pośrednictwem wskaźnikowego rejestru danych DPTR 23. Scharakteryzuj sposób adresowania zewnętrznej RAM zawartością portu P2 i rejestru R0 i R1. instrukcja zapis binarny wykonywana operacja instrukcji b (256*P2+R0)XDATA A MOVX A,@R b A (256*P2+R0)XDATA b (256*P2+R1)XDATA A MOVX A,@R b A (256*P2+R1)XDATA Składnia instrukcji jest trochę myląca. Wynika z niej bezpośrednio, że do adresowania zewnętrznej pamięci RAM używany jest tylko jeden z rejestrów mikrokontrolera, R0 lub R1. Oba rejestry są rejestrami 8-bitowymi,a do zaadresowania pamięci wymagany jest adres 16-bitowy. W trakcie wykonywania jednej z czterech przedstawionych instrukcji na liniach portu P0 pojawia się zawartość rejestru R0 lub R1 (8 mniej znaczących

12 bitów adresu) ale stan portu P2 nie ulega zmianie. Oznacza to, że przed wykonaniem instrukcji należy wpisać do portu P2 8-bardziej znaczących bitów adresowanej komórki zewnętrznej pamięci RAM Przykładowo do zapisu akumulatora A do komórki pamięci adresie 3C58h należy wykonywać poniższe instrukcje: MOV R0,#58h MOVX P2,#3cH ;R0-58H ;P2-3Ch ;(256*P2+R0) A W każdej linii tego krótkiego programu pojawił się po znaku średnika (;) komentarz, który ma wyjaśnić, pomóc w zrozumieniu działania programu. W trakcie asemblacji wszystkie komentarze (od znaku średnika do końca wiersza ) są pomijane. 24. Scharakteryzuj odczyt danych z pamięci programu ROM wewnętrznej albo zewnętrznej. Wewnętrzna lub zewnętrzna pamięć programu zawiera oprócz kodu programu także stałe wykorzystywane w programie. Ze względu na swój charakter, pamięć ROM (EPROM, EEPROM, Flash ROM), możliwy jest jedynie odczyt danych. Wybór typu pamięci, wewnętrznej lub zewnętrznej, mikrokontroler dokonuje testując linię EA w trakcie zerowania: EA=0, zewnętrzna pamięć programu EA=1, wewnętrzna pamięć programu Stan linii EA nie ma znaczenia jeśli licznik rozkazów PC zawiera adres większy niż adres wewnętrzny pamięci programu. Przykładowo jeśli mikrokontroler 8051 zawiera 4KB-ową wewnętrzną pamięć programu to dla stanu licznika rozkazów PC: PC=0000h..0FFFh i EA-0 mikrokontroler wykonuje program z zewnętrznej pamięci programu; PC=0000h..0FFFh i EA=1 mikrokontroler wykonuje program z wewnętrznej pamięci programu; PC-1000h..0FFFFh - mikrokontroler wykonuje program z zewnętrznej pamięci programu, niezależnie od stanu linii EA Pamięć programu (wewnętrzna lub zewnętrzna) adresowana jest na trzy różne sposoby: 1a. przez drugi lub przez trzeci bajt wykonywanej instrukcji. Sytuacja taka występuje przy pobieraniu 8-bitowych stałych z pamięci programu, np. przy inicjalizacji wartości początkowych rejestrów komórek pamięci, np.: Instrukcje Zapis binarny instrukcji Wykonywane operacje MOV A,#3Ch b b A 3Ch MOV R0,# b b R0 6 MOV 35,#4Bh b b b (35) 4Bh Dwie pierwsze instrukcje są instrukcjami 2-bajtowymi. Pierwszy bajt zawiera kod wykonywanej instrukcji i informację, adres docelowego rejestru. Drugi bajt zawiera wartość stałej, która wpisywana jest do akumulatora A (MOV A,#3Ch) i rejestru R0 (MOV R0,#6).

13 W trzeciej instrukcji (MOV 35,#4Bh) pierwszy bajt zawiera kod wykonywanej instrukcji, drugi adres komórki wewnętrznej pamięci RAM (35) zamienianej na liczbę szesnastkową (23), a trzecia wartość stałej pobieranej z pamięci programu (4Bh). Z powyższej tabeli przedstawiono również zapis binarny wykonywanych instrukcji (zrozumiały dla mikrokontrolera) oraz wykonywane operacje. Strzałka oznacza kierunek przepływu danych, wartość ujęta w okrągłe nawiasy (35) jest adresem komórki pamięci, w tym przypadku wewnętrznej pamięci RAM. Należy zwrócić uwagę na sposób zapisu stałych, które poprzedzone są zawsze znakiem #. Pominięcie tego znaku powoduje, że odwołujemy się do komórki pamięci RAM lub rejestrów specjalnych SFR. Ten sposób adresowania nazywany jest adresowaniem natychmiastowym. 1b. przez drugi i trzeci bajt wykonywanej instrukcji. Sytuacja taka występuje przy inicjalizacji wartości początkowej 16-bitowego wskaźnikowego rejestru danych DPTR: Instrukcja: zapis binarny instrukcji: wykonywana operacja MOV DPTR,#2E59h b b b DPTR 2E59h Przedstawiona 3-bajtowa instrukcja jest jedyną instrukcją, w której wpisywana jest do rejestru DPTR stała 16-bitowa. Pierwszy bajt zawiera kod operacji, bajt drugi i trzeci wpisywaną stałą. Ten sposób adresowania także nazywany jest adresowaniem natychmiastowym. 2. sumą zawartości 8-bitowego akumulatora A i 16-bitowego wskaźnikowego rejestru danych DPTR. Liczba zawarta w akumulatorze A traktowana jest jako liczba całkowita bez znaku, co oznacza, że jej zakres zmienności ograniczony jest do przedziału instrukcja: zapis binarny: wykonywana operacja MOVC A,@A+DPTR b A (A+DPTR) Aby wykonać dodawanie zawartości 8-bitowego akumulatora A i 16-bitowego wskaźnikowego rejestru danych DPTR, zawartość akumulatora A rozszerzana jest znakowo z 8 bitów do 16 bitów o bajt równy 00. Adresowanie pamięci programu określane jest jako adresowanie za pomocą rejestrów bazowych ( w tym przypadku za pomocą indeksoworejestrowo pośrednie. Pobieranie danych z pamięci programu i wymiana danych z/do zewnętrznej pamięci RAM 3. sumą zawartości 8-bitowego akumulatora A i 16-bitowego licznika rozkazów PC. Podobnie jak poprzednio liczba zawarta w akumulatorze A traktowana jest jako liczba całkowita bez znaku: instrukcja: zapis binarny instrukcji: wykonywana operacja MOVC A,@A+PC b A (A+PC) Zawartość akumulatora A jest rozszerzona znakowo z 1 do 2 bajtów. Różnica między tym, a poprzedni, rozkazem polega na tym, że po pobraniu kodu instrukcji licznik rozkazów PC zwiększany jest o 1. W ten sposób licznik rozkazów PC wskazuje na pierwszy bajt następnej instrukcji znajdującej się po wykonywanym rozkazie MOVC A,@A+PC. W podanej instrukcji pamięć programu adresowana jest za pomocą rejestru bazowego jakim jest licznik rozkazów PC (adresowanie indeksowo-rejestrowo pośrednie). W dwóch ostatnich rozkazach wskaźnikowy rejestr danych DPTR i bieżąca wartość licznika rozkazów PC traktowane są jako wskaźniki (adresy początkowe) do tablic umieszczonych w pamięci programu ROM. Zawartość akumulatora A traktowana jest jako indeks tablicy. Wielkość tych tablic ograniczona jest do 256 bajtów, ze względu na 8-bitową zawartość akumulatora z pamięci programu kolejnych znaków komunikatów, np.: pomiarowego, sterowanego urządzenia itp.

14 25. Jaka jest rola portu szeregowego i jakie rodzaje transmisji on obsługuje? Zadaniem portu szeregowego jest zapewnienie komunikacji poprzez łącze szeregowe między mikrokontrolerem a urządzeniami zewnętrznymi. Dane są wysyłane bit po bicie rozpoczynając od najmniej znaczącego bitu. Dane mogą być wysyłane i przyjmowane synchronicznie lub asynchronicznie. Przy transmisji synchronicznej przesyłanym danym towarzyszy sygnał synchronizujący, względem którego określa się stany przesyłanych bitów. Zaletą transmisji synchronicznej jest jej odporność na dewiacje częstotliwości sygnału taktującego, natomiast wadą - dwie linie przesyłowe: jedna dla danych, a druga dla sygnału taktującego. Przy transmisji asynchronicznej (UART) przesyłane są tylko dane, a sygnały taktujące są wytwarzane w nadajniku i odbiorniku niezależnie od siebie. Dlatego dla poprawnego odbierania danych nadajnik i odbiornik muszą być taktowane sygnałem o takiej samej częstotliwości. Wymaga to generatorów o wysokiej stabilności i uzgodnienia co do prędkości transmisji. Dla ułatwienia nawiązania łączności prędkości transmisji zostały unormowane. Są one podane w normie opisującej łącze szeregowe RS 232. Opisany poniżej port szeregowy jest identyczny dla całej rodziny mikrokontrolerów '51. W mikrokontrolerach spoza rodziny '51 transmisja szeregowa może być realizowana zupełnie inaczej. W rodzinie '51 port szeregowy może pracować w czterech trybach. Tryby pracy różnią się między sobą rodzajem transmisji (synchroniczna, asynchroniczna), liczbą przesyłanych bitów w jednej ramce i źródłem sygnałów taktujących port szeregowy. Tryb pracy portu szeregowego, źródło jego taktowania itd. są wybierane poprzez odpowiednie ustawienie znaczników w rejestrze SCON: Rola znaczników jest następująca: SM0, SM1- wybór trybu pracy tryb pracy rodzaj transmisji synchroniczna, 8bitów asynchroniczna, 8 bitów asynchroniczna, 9 bitów asynchroniczna, 9 bitów częstotliwość taktująca f osc /12 zmienna f osc /64 lub f osc /32 zmienna 26. Jakie końcówki mikrokontrolera służą do odbioru i nadawania danych, podaj przykłady instrukcji pozwalających na sterowanie pracą portu szeregowego P3. Mikrokontroler 8051 i pochodne posiadają sprzętowy port szeregowy (w skrócie UART), dzięki któremu możliwe jest wysyłanie i odbieranie informacji w postaci szeregowej, czyli "bit po bicie". Procesor posiada dwie dedykowane końcówki, które wchodzą w skład portu P3 procesora. Są to: RxD - (P3.0) wejście szeregowe ("Recieve Data") TxD - (P3.1) wyjście szeregowe ("Transmit Data"). Końcówki te mogą być wykorzystywane jako uniwersalne wejścia-wyjścia procesora, dzięki instrukcjom zapisu do portu P3, np.: MOV P3,#dana lub indywidualnym sterowaniem każdej końcówki SETB P3.0 {ustawienie "1" na końcówce RxD CLR P3.1 {ustawienie "0" na końcówce TxD} 27. Do czego służy układ UART w mikrokontrolerze 8051 przedstaw jego krótki opis.? Układ ten służy do asynchronicznej transmisji danych. Posiada dwie końcówki RxD-P3.0 wej szeregowe oraz TxD- P3.1 wyj. Szeregowe. Elementem, z którego wysyła się dane jest rejestr SBUF, znajdujący się pod adresem 99h w pamięci wewnętrznej danych, w obszarze rejestrów specjalnych SFR. Oprócz niego jest jeszcze dodatkowy rejestr SCON sterujący wszystkimi funkcjami portu takimi jak: tryby pracy, sygnalizowanie stanów transmisji, aktywowanie odbiornika portu szeregowego. Jest to realizowane przez ustawienie odpowiednich znaczników SCON Znaczniki te przesyłane są po dwukierunkowej linii P3.0 (RxD) i odbierane i nadawane za pomocą rejestru SBUF 28. Jakie funkcje pełnią w 8051 porty- podaj ich krótki opis, przedstaw schemat ideowy portu P0? Porty umożliwiają dołączenie do mikrokontrolera takich urządzeń zewnętrznych jak: klawiatura, pole odczytowe, przekaźniki. Porty mogą być cyfrowe do przesyłania danych cyfrowych i logicznych oraz analogowe np. wejścia przetwornika A/C. Wszystkich portów jest cztery oznaczone są P0, P1, P2, P3. Są one dwukierunkowe, każdy zawiera

15 osiem linii, z których każda może pracować jako niezależna linia wejścia lub wyjścia. Każdy z portów zawiera przerzutnik D, będący elementem rejestru danego portu umieszczonego w obszarze SFR. 29. Jakie rozkazy pozwalają ustawiać stany portów? Stan wyjść linii portów można ustawić rozkazami typu MOV, ale ma to tę niedogodność, że rozkazem tym ustawia się jednocześnie wszystkie linie danego portu. Wygodniej jest użyć rozkazów logicznych operujących na bajtach lub pojedynczych bitach. W rodzinie mikrokontrolerów 51 są wykonywane następujące operacje logiczne na bajtach: CPL negacja logiczna, CLR zerowanie bitów, ANL iloczyn logiczny, ORL suma logiczna, XRL różnica symetryczna. Pierwsze dwie operacje są wykonywane wyłącznie w akumulatorze. Natomiast pozostałe mogą być wykonywane również poza akumulatorem na wszystkich rejestrach obszaru SFR i komórkach pamięci wewnętrznej RAM. Na pojedynczych bitach można wykonywać operacje: CLR zerowanie bitu, SETB ustawianie bitu w stan 1, CPL negacja bitu, ANL iloczyn logiczny, ORL suma logiczna. 30. Budowa i przeznaczenie ALU Jednostka artytmetyczno-logiczna wykonuje podstawowe działania arytmetyczne i logiczne. Należą do nich dodawanie arytmetyczne (binarne i dziesiętne), odejmowanie, mnożenie, dzielenie, porównywanie, przesunięcie o jeden bit w lewo lub w prawo, suma i iloczyn logiczny, różnica symetryczna oraz negacja. Wynik operacji wykonywanych w jednostce arytmetyczno-logicznej może mieć wpływ na kolejność wykonywanych rozkazów, działania programu. Z jednostką arytmetyczno-logiczną są funkcjonalnie powiązane trzy rejestry o ściśle sprecyzowanym przeznaczeniu: akumulator A, rejestr statusowy PSW, rejestr B oraz licznik rozkazów PC. - Akumulator jest umieszczony pod adresem E0h (224 dziesiętnie). Rejestr ten służy jednostce ALU za miejsce pobrania argumentu oraz umieszczenia wyniku większości operacji arytmetyczno-logicznych. Rejestr ten może być adresowany bitowo (podobnie jak bajty spod adresów 20h... 2Fh), dzięki czemu możliwe jest testowanie jego bitów bez potrzeby wykonywania dodatkowych operacji logicznych. Dodatkowo rejestr A poza funkcjami związanymi z jednostką ALU służy do pobierania i umieszczania bajtów w zewnętrznej pamięci danych. - rejestr B - drugi po akumulatorze ważny rejestr współpracujący z ALU, 8-bitowy,. Służy on do umieszczenia jednego ze składników mnożenia lub dzielenia, po wykonaniu jednej z tych operacji w rejestrze tym umieszczany jest: w przypadku mnożenia starszy bajt 16-bitowego wyniku mnożenia dwóch liczb 8-bitowych; w przypadku dzielenia reszta z dzielenia dwóch liczb 8-bitowych. Oczywiście zarówno rejestr B, jak i akumulator A, mogą być wykorzystywane dowolnie jako rejestry uniwersalne. - Rejestr PSW (ang. "Program Status Word - słowo stanu programu ") - trzeci ważny rejestr związany z ALU. Rejestr ten wchodzi w skład SFR a jego adres to D0h (208 dziesiętnie). W skład tego rejestru wchodzi osiem bitów nazywanych znacznikami, z których cztery informują o przebiegu wykonania informacji arytmetyczno-logicznych. - Licznik rozkazów PC ( Program counter ) - służy do adresowania pamięci programu. Szesnasto-bitowy adres umożliwia zaadresowanie 216=65536 komórek pamięci, tzn. 64 KB. Należy pamiętać, że 1 KB = 210=1024 bajty. Z zaadresowanej komórki pamięci programu procesor pobiera rozkaz, który złożony jest z jednego, dwóch lub trzech bajtów. Po pobraniu każdego bajtu rozkazu następuje zwiększenie licznika rozkazów PC o jeden (licznik rozkazów jest inkrementowany). W ten sposób licznik rozkazów PC wskazuje na adres pierwszego bajtu następnego do wykonania rozkazu. Przy pobieraniu rozkazów z zewnętrznej pamięci programu jej adres przesyłany jest za pośrednictwem portu P0 i

16 P2, a bajty rozkazów przesyłane są poprzez port P0. Zawartość licznika rozkazów PC może być zmieniana odpowiednimi rozkazami, co umożliwia wykonywanie skoków do różnych fragmentów programu. 31. Jakie jest przeznaczenie rejestrów specjalnych SFR i jakie rejestry zalicza się do tej grupy? Służą one do wprowadzenia (np. przez programistę) składników działania. Do rejestrów specjalnych SFR zalicza się: - Accumulator (A) - adres 0E0h (rw-00h)., - rejestr B - adres 0F0h (rw-00h), - rejestr PSW - 0D0h (rw-00h). "słowo stanu programu (ang. "Program Status Word"). - Wskaźnikowy rejestr danych DPTR (Data Pointer Register) - adresy: 82h, 83h (rw-00h każdy) służący do adresowania. - Wskaźnik stosu SP (Stack Pointer) - adres 81h (rw-00h). 32. Co się kryje pod pojęciem Układy czasowo licznikowe? Pod pojęciem tym kryją się dwa 16-bitowe liczniki T0 i T1 oraz dodatkowy licznik T2 który występuje w procesorze Najogólniej mówiąc każdy z tych liczników a właściwie układów czasowo-licznikowych jest tak uniwersalnym blokiem, że z wykorzystaniem jego można dokonać następujące dwie operacje: - za pomocą T0 (T1lub T2) można zliczać impulsy z zewnętrznego wejścia licznikowego; pin 14 dla T0 i pin 15 dla T1 (tryb licznika) - można zliczać wewnętrzne impulsy pochodzące z układu taktującego procesor, w każdym przypadku będzie to sygnał o częstotliwości: gdzie F xtal częstotliwość oscylatora kwarcowego W przypadku wykorzystania układu licznikowego w obu przypadkach należy wiedzieć że: - maksymalna liczba zliczonych impulsów jest określona pojemnością 16-bitowego licznika, czyli 2 do potęgi 16 = (licznik zlicza od 0 do po czym po nadejściu kolejnego impulsu jest zerowany oraz z zależności od potrzeb jest generowanie odpowiednie przerwanie); - licznik można w dowolnym momencie uruchomić (zezwolić na zliczanie) lub zatrzymać komendę; - do licznika można w każdej chwili wpisać dowolną wartość (16-bitowa liczbę), co spowoduje że licznik będzie zliczał impulsy od tej wartości aż do przepełnienia; wpisu takiego najlepiej jest dokonać w czasie gdy licznik jest zatrzymany; - dodatkowo licznik można bramkować czyli uzależnić jego pracę lub zatrzymanie w zależności od stanu panującego na wejściach:int0 dla licznika T0 oraz INT1 dla licznika T1; - oprócz tego licznik T1 (jak i T2 w 8052) może taktować zbudowany port szeregowy w specjalnym trybie; 33. Co to jest przerwanie i jak jest realizowana obsługa przerwań w 8051 Przerwanie (interrupt) to sposób pracy procesora polegający na tym, że pod wpływem sygnału zewnętrznego lub pochodzącego z układu wewnętrznego mikrokontrolera, procesor przerywa wykonanie bieżącego programu i przechodzi do wykonywania podprogramu związanego z sygnałem przerwania. Podprogram obsługi przerwania jest zakończony specjalnym rozkazem, który powoduje, że procesor powraca do wykonywania przerwanego programu. Aby móc kontrolować przerwany program, przed wejściem do podprogramu obsługi przerwania, procesor musi zapamiętać miejsce, w którym nastąpiło przerwanie. Odbywa się to poprzez zapisanie zawartości licznika rozkazów do buforu pamięciowego nazywanym stosem. W zależności od typu procesora czy mikrokontrolera, w momencie przejścia procesora do obsługi przerwania, na stosie oprócz zawartości licznika rozkazów mogą być składowane automatycznie również zawartości innych rejestrów. Ale w rodzinie '51 wywołanie przerwania, albo rozkaz CALL wywołujący podprogram, powoduje, że na stosie jest chowana tylko zawartość licznika rozkazów. Zawartość pozostałych rejestrów, np. rejestru PSW, DPTR itp. lub komórek pamięci muszą być chowane programowo. Również w zależności od typu procesora, adres (interrupt vector) od którego rozpoczyna się podprogram obsługi przerwania jest określany w różny sposób. W jednych procesorach może być stały, umieszczonym pod ściśle określonym adresem pamięci programu - tak jest w rodzinie '51, w innych może być określany programowo lub przez urządzenie zewnętrzne. Lp. znacznik źródło przerwania adres IE0 TF0 IE1 TF1 RI+TI TF2+EXF2 IADC IEX2 IEX3 IEX4 IEX5 IEX6 F F xtal 12 przerwanie zewnętrzne INT0 przerwanie od licznika T0 przerwanie zewnętrzne INT1 przerwanie od licznika T2 przerwanie od nad. i odb. portu szeregowego przerwanie od licznika T2 i wejścia T2EX przerwanie od przetwornika A/C przerwanie zewnętrzne INT2 przerwanie zewnętrzne INT3, komparator CRC przerwanie zewnętrzne INT4, komparator CC1 przerwanie zewnętrzne INT5, komparator CC2 przerwanie zewnętrzne INT6, komparator CC3 0003h 000Bh 0013h 001Bh 0023h 002Bh 0043h 004Bh 0053h 005Bh 0063h 006Bh

17 W mikrokontrolerach rodziny '51 adresy podprogramów obsługi przerwań są umieszczone w początkowym obszarze pamięci programu. Do wykrywania przerwań zewnętrznych służą linie INT0 i INT1. Mogą one reagować albo na poziom sygnału ( 0 ) albo na zbocze opadające. Wykrywanie przez procesor zmiany poziomu sygnału na wejściu przerwań zewnętrznych polega na testowaniu stanu wejścia w każdym cyklu maszynowym. Jeżeli w jednym cyklu maszynowym występuje jeden stan, a w drugim drugi stan, to jest to traktowane przez układ przerwań jako zmiana poziomu. Dlatego, by układ poprawnie zareagował na sygnał przerwania, zarówno stan wysoki jak i niski powinny trwać przynajmniej przez jeden cykl maszynowy. Przy przerwaniach zewnętrznych reagujących na poziom, przed zakończeniem podprogramu obsługi przerwania, sygnał wejściowy powinien przejść do poziomu wysokiego lub należy zablokować to przerwanie, gdyż w przeciwnym przypadku nastąpi ponowne wejście do obsługi tego przerwania. Stan znaczników wywołujących przerwania jest sprawdzany w fazie S5P2 każdego cyklu maszynowego. W następnym cyklu maszynowym po wykryciu sygnału przerwania następuje rozpoznanie źródła przerwania oraz ustalenie kolejności obsługi przerwania, jeśli wystąpiło kilka sygnałów przerwań równocześnie. W dwóch kolejnych cyklach maszynowych jest zapamiętywana na stosie zawartość licznika rozkazów, do licznika rozkazów jest wpisywany adres przerwania i jest ewentualnie zerowany znacznik wywołujący przerwanie, jeżeli jest to znacznik zerowany sprzętowo. Wejście do procedury obsługi przerwania może być opóźnione jeżeli: jest obsługiwane przerwanie, które nie może być przerwane. W tej sytuacji musi być ono najpierw zakończone, potem jest wykonywany jeden rozkaz z przerwanego programu i dopiero wtedy może być obsłużone kolejne przerwanie. nie został zakończony aktualnie wykonywany rozkaz. Najpierw musi być zakończony rozkaz, by procesor przeszedł do obsługi przerwania. Z powyższego wynika wniosek, że czas od momentu nadejścia sygnału przerwania do momentu wejścia do procedury obsługi przerwania może być różny. Mikrokontroler nie obsługuje sygnału przerwania, który przyszedł gdy przerwanie było zablokowane. Jeżeli do trzeciego cyklu maszynowego procedury przerwania nadejdzie następny sygnał przerwania o wyższym poziomie niż aktualny, to zostanie on obsłużony w pierwszej kolejności. Po wejściu do procedury obsługi przerwania system przerwań zostaje zablokowany dla innych przerwań, chyba że nadejdzie przerwanie o wyższym priorytecie. Odblokowanie systemu następuje po rozkazie RETI. Rozkaz ten ponadto powoduje przepisanie dwóch bajtów ze szczytu stosu do rejestru rozkazów PC. Zakończenie podprogramu obsługi przerwania rozkazem RET również odtworzy zawartość rejestru rozkazów, czyli nastąpi powrót do wykonywania przerwanego programu, ale nie nastąpi odblokowanie systemu przerwań dla następnych przerwań! Gdy równocześnie nadejdzie kilka sygnałów przerwań żądających obsługi, to o kolejności ich obsłużenia decyduje priorytet ustalony arbitralnie przez producenta. Oznacza to, że przerwanie o wyższym priorytecie zostanie obsłużone przed przerwaniem o niższym priorytecie. Lp. Źródło przerwania Priorytet IE0 IADC TF0 IEX2 IE1 IEX3 TF1 IEX4 RI+TI IEX5 TF2+EXF2 IEX6 najwyższy najniższy W mikrokontrolerach rodziny '51 wprowadzono mechanizm umożliwiający nadanie wybranym przerwaniom bezwzględnego pierwszeństwa, tzn. mają one możliwość przerwania wykonywanego podprogramu obsługi innego przerwania. Przerwaniom można nadać odpowiedni poziom. Jeżeli w trakcie obsługi przerwania nadejdzie sygnał przerwania o wyższym poziomie, to procesor przerwie wykonywanie przerwania z poziomu niższego, wykona obsługę wyższego i ponownie przejdzie do wykonywania obsługi przerwania. Do ustalania poziomów przerwania służą rejestry poziomu przerwań. W zależności od typu mikrokontrolera mogą występować jeden lub dwa rejestry. W mikrokontrolerach 8xC51/52 występuje rejestr IP:

18 X zarezerwowane PT2 licznik (mikrokontroler 8xC52) PS port szeregowy PT1 licznik T1 PX1 przerwanie zewnętrzne INT1 PT0 licznik T0 PX0 przerwanie zewnętrzne INT0 Należy zwrócić uwagę, że w mikrokontrolerach 8xC51/51 rejestr IP znajduje się pod adresem, pod którym w mikrokontrolerach 80C515/535 znajduje się rejestr IEN1. Ustawienie w rejestrze IP w stan 1 znacznika dla wybranego źródła przerwania powoduje, że przerwanie to osiąga wyższy poziom od przerwań, których znaczniki mają stan 0. W ten sposób wyróżnione przerwanie będzie obsłużone jako pierwsze, jeśli zgłosi się kilka przerwań, lub spowoduje przerwanie obsługiwanego przerwania i zostanie samo obsłużone. Jeśli kilka źródeł przerwań zostanie wyróżnionych wyższym poziomem, to, gdy zgłoszą się równocześnie, o kolejności obsłużenia zadecyduje priorytet, według podanej wyżej tabeli. 34. Co to jest cykl maszynowy mikrokontrolera 8051? Cykl maszynowy jest podstawową jednostką określającą czas wykonywania instrukcji. Dla rodziny mikrokontrolerów '51 składa się on z sześciu stanów, oznaczonych od S1 do S6, z których każdy dzieli się na dwie fazy P1 i P2. Czas trwania jednej fazy jest równy okresowi oscylatora. Wynika stąd, że czas trwania cyklu maszynowego jest 12 razy dłuższy od okresu oscylatora. W każdym stanie cyklu maszynowego są realizowane pewne podstawowe procedury związane z wykonywaniem rozkazów. Rozkazy są pobierane z pamięci wewnętrznej lub zewnętrznej mikrokontrolera spod adresu wskazywanego przez licznik rozkazów (PC). Rozkazy mogą być jedno lub wielobajtowe, a czas ich wykonywania może trwać jeden lub kilka cykli maszynowych. W rodzinie '51 występują rozkazy jedno, dwu i trzyj-bajtowe, które są wykonywane w jednym, dwóch lub czterech cyklach maszynowych. 35. Scharakteryzuj wykonywanie rozkazu jednobajtowego. Jeżeli rozkaz jest jednobajtowy, to jest on wykonywany w jednym cyklu maszynowym, a bajt następnego rozkazu jest pobierany w takcie S1 kolejnego cyklu maszynowego.

19 36. Scharakteryzuj wykonywanie rozkazu dwubajtowego. Większość rozkazów dwubajtowych jest wykonywana w jednym cyklu maszynowym, z tym że drugi bajt rozkazu jest pobierany w takcie S4 cyklu maszynowego. 37. Scharakteryzuj wykonywanie rozkazu trzybajtowego. Rozkazy trójbajtowe są wykonywane w dwóch cyklach maszynowych. W jednym cyklu maszynowym, w taktach S1 i S4, są pobierane dwa bajty rozkazu, a w takcie S1 drugiego cyklu maszynowego jest pobierany trzeci bajt rozkazu. Bajt nowego rozkazu jest pobierany w takcie S1 trzeciego cyklu maszynowego. 38. Scharakteryzuj sposób wykonywania rozkazu jednobajtowego w kilku cyklach maszynowych W rodzinie '51 występują również rozkazy jednobajtowe i dwubajtowe, które są wykonywane w dwóch lub czterech cyklach maszynowych. W czterech cyklach maszynowych są wykonywane tylko rozkazy mnożenia (MUL AB) i dzielenia (DIV AB). Po pobraniu każdego bajtu rozkazu następuje automatyczne zwiększenie o jeden licznika rozkazów. Znajomość liczby cykli maszynowych potrzebnych na wykonanie poszczególnych rozkazów jest konieczna w przypadku generowania przez mikrokontroler odcinków czasów o dużej dokładności. Sygnały o krótkich czasach uzyskuje się najczęściej przez wykonanie programu wymagającego odpowiedniej liczby cykli maszynowych.

20

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

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

Historia mikrokontrolerów

Historia mikrokontrolerów Historia mikrokontrolerów Dość złożone w budowie, elementy elektroniczne stosowane są powszechnie w komputerach klasy PC. W nie tak odległej przeszłości wielu użytkowników sędziwego dziś Spektruma, Commodora

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

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

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

architektura komputerów w 1 1

architektura komputerów w 1 1 8051 Port P2 Port P3 Transm. szeregowa Timery T0, T1 Układ przerwań Rejestr DPTR Licznik rozkazów Pamięć programu Port P0 Port P1 PSW ALU Rejestr B SFR akumulator 8051 STRUKTURA architektura komputerów

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

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

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

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

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

Rejestry procesora. Nazwa ilość bitów. AX 16 (accumulator) rejestr akumulatora. BX 16 (base) rejestr bazowy. CX 16 (count) rejestr licznika

Rejestry procesora. Nazwa ilość bitów. AX 16 (accumulator) rejestr akumulatora. BX 16 (base) rejestr bazowy. CX 16 (count) rejestr licznika Rejestry procesora Procesor podczas wykonywania instrukcji posługuje się w dużej części pamięcią RAM. Pobiera z niej kolejne instrukcje do wykonania i dane, jeżeli instrukcja operuje na jakiś zmiennych.

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

Logiczny model komputera i działanie procesora. Część 1.

Logiczny model komputera i działanie procesora. Część 1. Logiczny model komputera i działanie procesora. Część 1. Klasyczny komputer o architekturze podanej przez von Neumana składa się z trzech podstawowych bloków: procesora pamięci operacyjnej urządzeń wejścia/wyjścia.

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

Projekt z przedmiotu Systemy akwizycji i przesyłania informacji. Temat pracy: Licznik binarny zliczający do 10.

Projekt z przedmiotu Systemy akwizycji i przesyłania informacji. Temat pracy: Licznik binarny zliczający do 10. Projekt z przedmiotu Systemy akwizycji i przesyłania informacji Temat pracy: Licznik binarny zliczający do 10. Andrzej Kuś Aleksander Matusz Prowadzący: dr inż. Adam Stadler Układy cyfrowe przetwarzają

Bardziej szczegółowo

Systemy wbudowane. Wprowadzenie. Wprowadzenie. Mikrokontroler 8051 Budowa

Systemy wbudowane. Wprowadzenie. Wprowadzenie. Mikrokontroler 8051 Budowa Systemy wbudowane Mikrokontroler 8051 Budowa dr inż. Maciej Piechowiak Wprowadzenie rdzeń CPU z jednostką artymetyczno-logiczną (ALU) do obliczeń na liczbach 8-bitowych, uniwersalne dwukierunkowe porty

Bardziej szczegółowo

Lista rozkazów mikrokontrolera 8051

Lista rozkazów mikrokontrolera 8051 Lista rozkazów mikrokontrolera 8051 Spis treści: Architektura mikrokontrolera Rozkazy Architektura mikrokontrolera Mikrokontroler 8051 posiada trzy typy pamięci: układ zawiera pamięć wewnętrzną (On-Chip

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

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

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

Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2

Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2 Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2 Literatura: www.zilog.com Z80 Family, CPU User Manual Cykle magistrali w mikroprocesorze Z80 -odczyt kodu rozkazu, -odczyt-zapis pamięci,

Bardziej szczegółowo

Technika mikroprocesorowa I Wykład 4

Technika mikroprocesorowa I Wykład 4 Technika mikroprocesorowa I Wykład 4 Układ czasowo licznikowy 8253 INTEL [Źródło: https://www.vtubooks.com/free_downloads/8253_54-1.pdf] Wyprowadzenia układu [Źródło: https://www.vtubooks.com/free_downloads/8253_54-1.pdf]

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

3.2. Zegar/kalendarz z pamięcią statyczną RAM 256 x 8

3.2. Zegar/kalendarz z pamięcią statyczną RAM 256 x 8 3.2. Zegar/kalendarz z pamięcią statyczną RAM 256 x 8 Układ PCF 8583 jest pobierającą małą moc, 2048 bitową statyczną pamięcią CMOS RAM o organizacji 256 x 8 bitów. Adresy i dane są przesyłane szeregowo

Bardziej szczegółowo

Opis mikrokontrolera AT89C2051

Opis mikrokontrolera AT89C2051 Opis mikrokontrolera AT89C2051 Cechy mikrokontrolera AT89C2051: kompatybilny z układami rodziny MCS-51, 2kB wewnętrznej pamięci typu Flash-EPROM, zegar: 0Hz do 24MHz, 8-bitowa jednostka centralna, 128B

Bardziej szczegółowo

Architektura mikrokontrolera MCS51

Architektura mikrokontrolera MCS51 Architektura mikrokontrolera MCS51 Ryszard J. Barczyński, 2017 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego Materiały dydaktyczne do użytku wewnętrznego Architektura mikrokontrolera

Bardziej szczegółowo

Zerowanie mikroprocesora

Zerowanie mikroprocesora Zerowanie mikroprocesora Zerowanie (RESET) procesora jest potrzebne dla ustalenia początkowych warunków pracy po włączeniu zasilania: adres początku programu stan systemu przerwań zawartość niektórych

Bardziej szczegółowo

Architektura mikrokontrolera MCS51

Architektura mikrokontrolera MCS51 Architektura mikrokontrolera MCS51 Ryszard J. Barczyński, 2018 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego Materiały dydaktyczne do użytku wewnętrznego Architektura mikrokontrolera

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

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

UTK Można stwierdzić, że wszystkie działania i operacje zachodzące w systemie są sterowane bądź inicjowane przez mikroprocesor.

UTK Można stwierdzić, że wszystkie działania i operacje zachodzące w systemie są sterowane bądź inicjowane przez mikroprocesor. Zadaniem centralnej jednostki przetwarzającej CPU (ang. Central Processing Unit), oprócz przetwarzania informacji jest sterowanie pracą pozostałych układów systemu. W skład CPU wchodzą mikroprocesor oraz

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

Układy sekwencyjne. Podstawowe informacje o układach cyfrowych i przerzutnikach (rodzaje, sposoby wyzwalania).

Układy sekwencyjne. Podstawowe informacje o układach cyfrowych i przerzutnikach (rodzaje, sposoby wyzwalania). Ćw. 10 Układy sekwencyjne 1. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z sekwencyjnymi, cyfrowymi blokami funkcjonalnymi. W ćwiczeniu w oparciu o poznane przerzutniki zbudowane zostaną układy rejestrów

Bardziej szczegółowo

Liczniki, rejestry lab. 08 Mikrokontrolery WSTĘP

Liczniki, rejestry lab. 08 Mikrokontrolery WSTĘP Liczniki, rejestry lab. 08 PODSTAWY TECHNIKI CYFROWEJ I MIKROPROCESOROWEJ EIP KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII WWW.KEIASPE.AGH.EDU.PL AKADEMIA GÓRNICZO-HUTNICZA WWW.AGH.EDU.PL

Bardziej szczegółowo

Asembler - język maszynowy procesora

Asembler - język maszynowy procesora UWAGA! Treść niniejszego dokumentu powstała na podstawie cyklu artykułów pt. Mikrokontrolery? To takie proste zamieszczonych w czasopiśmie Elektronika dla Wszystkich. Asembler - język maszynowy procesora

Bardziej szczegółowo

organizacja procesora 8086

organizacja procesora 8086 Systemy komputerowe Procesor 8086 - tendencji w organizacji procesora organizacja procesora 8086 " # $ " % strali " & ' ' ' ( )" % *"towego + ", -" danych. Magistrala adresowa jest 20.bitowa, co pozwala

Bardziej szczegółowo

Przerzutnik ma pewną liczbę wejść i z reguły dwa wyjścia.

Przerzutnik ma pewną liczbę wejść i z reguły dwa wyjścia. Kilka informacji o przerzutnikach Jaki układ elektroniczny nazywa się przerzutnikiem? Przerzutnikiem bistabilnym jest nazywany układ elektroniczny, charakteryzujący się istnieniem dwóch stanów wyróżnionych

Bardziej szczegółowo

Ćw. 7: Układy sekwencyjne

Ćw. 7: Układy sekwencyjne Ćw. 7: Układy sekwencyjne Wstęp Celem ćwiczenia jest zapoznanie się z sekwencyjnymi, cyfrowymi blokami funkcjonalnymi. W ćwiczeniu w oparciu o poznane przerzutniki zbudowane zostaną następujące układy

Bardziej szczegółowo

LICZNIKI PODZIAŁ I PARAMETRY

LICZNIKI PODZIAŁ I PARAMETRY LICZNIKI PODZIAŁ I PARAMETRY Licznik jest układem służącym do zliczania impulsów zerojedynkowych oraz zapamiętywania ich liczby. Zależnie od liczby n przerzutników wchodzących w skład licznika pojemność

Bardziej szczegółowo

PAMIĘCI. Część 1. Przygotował: Ryszard Kijanka

PAMIĘCI. Część 1. Przygotował: Ryszard Kijanka PAMIĘCI Część 1 Przygotował: Ryszard Kijanka WSTĘP Pamięci półprzewodnikowe są jednym z kluczowych elementów systemów cyfrowych. Służą do przechowywania informacji w postaci cyfrowej. Liczba informacji,

Bardziej szczegółowo

Statyczne badanie przerzutników - ćwiczenie 3

Statyczne badanie przerzutników - ćwiczenie 3 Statyczne badanie przerzutników - ćwiczenie 3. Cel ćwiczenia Zapoznanie się z podstawowymi strukturami przerzutników w wersji TTL realizowanymi przy wykorzystaniu bramek logicznych NAND oraz NO. 2. Wykaz

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

Lista rozkazów mikrokontrolera 8051 część pierwsza: instrukcje przesyłania danych, arytmetyczne i logiczne

Lista rozkazów mikrokontrolera 8051 część pierwsza: instrukcje przesyłania danych, arytmetyczne i logiczne Lista rozkazów mikrokontrolera 8051 część pierwsza: instrukcje przesyłania danych, arytmetyczne i logiczne Ryszard J. Barczyński, 2016 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego

Bardziej szczegółowo

Architektura Systemów Komputerowych. Jednostka ALU Przestrzeń adresowa Tryby adresowania

Architektura Systemów Komputerowych. Jednostka ALU Przestrzeń adresowa Tryby adresowania Architektura Systemów Komputerowych Jednostka ALU Przestrzeń adresowa Tryby adresowania 1 Jednostka arytmetyczno- logiczna ALU ALU ang: Arythmetic Logic Unit Argument A Argument B A B Ci Bit przeniesienia

Bardziej szczegółowo

Mikrokontroler 80C51

Mikrokontroler 80C51 DSM-51 * STRONA 1 * Temat : Wiadomości podstawowe Układy cyfrowe to rodzaj układów elektronicznych, w których sygnały napięciowe przyjmują tylko określoną liczbę poziomów, którym przypisywane są wartości

Bardziej szczegółowo

Porty wejścia/wyjścia w układach mikroprocesorowych i w mikrokontrolerach

Porty wejścia/wyjścia w układach mikroprocesorowych i w mikrokontrolerach Porty wejścia/wyjścia w układach mikroprocesorowych i w mikrokontrolerach Semestr zimowy 2012/2013, E-3, WIEiK-PK 1 Porty wejścia-wyjścia Input/Output ports Podstawowy układ peryferyjny port wejścia-wyjścia

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

Mikrokontroler Intel 8051. dr inż. Wiesław Madej

Mikrokontroler Intel 8051. dr inż. Wiesław Madej Mikrokontroler Intel 8051 dr inż. Wiesław Madej Mikrokontroler Intel 8051 Wprowadzony na rynek w 1980 roku Następca rodziny 8048 Intel zakooczył produkcję w marcu 2006 Obecnie produkowany przez różne firmy

Bardziej szczegółowo

Przykładowe pytania DSP 1

Przykładowe pytania DSP 1 Przykładowe pytania SP Przykładowe pytania Systemy liczbowe. Przedstawić liczby; -, - w kodzie binarnym i hexadecymalnym uzupełnionym do dwóch (liczba 6 bitowa).. odać dwie liczby binarne w kodzie U +..

Bardziej szczegółowo

dwójkę liczącą Licznikiem Podział liczników:

dwójkę liczącą Licznikiem Podział liczników: 1. Dwójka licząca Przerzutnik typu D łatwo jest przekształcić w przerzutnik typu T i zrealizować dzielnik modulo 2 - tzw. dwójkę liczącą. W tym celu wystarczy połączyć wyjście zanegowane Q z wejściem D.

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

Technika mikroprocesorowa I Wykład 2

Technika mikroprocesorowa I Wykład 2 Technika mikroprocesorowa I Wykład 2 Literatura: www.zilog.com Z80 Family, CPU User Manual Cykle magistrali w mikroprocesorze Z80 -odczyt kodu rozkazu, -odczyt-zapis pamięci, -odczyt-zapis urządzenia we-wy,

Bardziej szczegółowo

Lista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014

Lista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014 Lista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014 Temat 1. Algebra Boole a i bramki 1). Podać przykład dowolnego prawa lub tożsamości, które jest spełnione w algebrze Boole

Bardziej szczegółowo

Ćwiczenie 2. Siedmiosegmentowy wyświetlacz LED

Ćwiczenie 2. Siedmiosegmentowy wyświetlacz LED Ćwiczenie 2 Siedmiosegmentowy wyświetlacz LED 2-1. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się studentów ze sposobem obsługi wielopozycyjnego 7-segmentowego wyświetlacza LED multipleksowanego programowo

Bardziej szczegółowo

WFiIS CEL ĆWICZENIA WSTĘP TEORETYCZNY

WFiIS CEL ĆWICZENIA WSTĘP TEORETYCZNY WFiIS LABORATORIUM Z ELEKTRONIKI Imię i nazwisko: 1. 2. TEMAT: ROK GRUPA ZESPÓŁ NR ĆWICZENIA Data wykonania: Data oddania: Zwrot do poprawy: Data oddania: Data zliczenia: OCENA CEL ĆWICZENIA Ćwiczenie

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

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

1. Poznanie właściwości i zasady działania rejestrów przesuwnych. 2. Poznanie właściwości i zasady działania liczników pierścieniowych.

1. Poznanie właściwości i zasady działania rejestrów przesuwnych. 2. Poznanie właściwości i zasady działania liczników pierścieniowych. Ćwiczenie 9 Rejestry przesuwne i liczniki pierścieniowe. Cel. Poznanie właściwości i zasady działania rejestrów przesuwnych.. Poznanie właściwości i zasady działania liczników pierścieniowych. Wprowadzenie.

Bardziej szczegółowo

Struktura i działanie jednostki centralnej

Struktura i działanie jednostki centralnej Struktura i działanie jednostki centralnej ALU Jednostka sterująca Rejestry Zadania procesora: Pobieranie rozkazów; Interpretowanie rozkazów; Pobieranie danych Przetwarzanie danych Zapisywanie danych magistrala

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

Informacje ogólne o układzie 8051.

Informacje ogólne o układzie 8051. Informacje ogólne o układzie 8051. Układ 8051 jest jednoukładowym mikrokontrolerem 8-bitowym. Mikrokontroler jest umieszczony w 40-nóŜkowej obudowie typu DIL. Poszczególne końcówki układu mają następujące

Bardziej szczegółowo

Zapoznanie się z podstawowymi strukturami liczników asynchronicznych szeregowych modulo N, zliczających w przód i w tył oraz zasadą ich działania.

Zapoznanie się z podstawowymi strukturami liczników asynchronicznych szeregowych modulo N, zliczających w przód i w tył oraz zasadą ich działania. Badanie liczników asynchronicznych - Ćwiczenie 4 1. el ćwiczenia Zapoznanie się z podstawowymi strukturami liczników asynchronicznych szeregowych modulo N, zliczających w przód i w tył oraz zasadą ich

Bardziej szczegółowo

UKŁADY CYFROWE. Układ kombinacyjny

UKŁADY CYFROWE. Układ kombinacyjny UKŁADY CYFROWE Układ kombinacyjny Układów kombinacyjnych są bramki. Jedną z cech układów kombinacyjnych jest możliwość przedstawienia ich działania (opisu) w postaci tabeli prawdy. Tabela prawdy podaje

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

Opis czytnika TRD-FLAT CLASSIC ver. 1.1. Naścienny czytnik transponderów UNIQUE w płaskiej obudowie

Opis czytnika TRD-FLAT CLASSIC ver. 1.1. Naścienny czytnik transponderów UNIQUE w płaskiej obudowie TRD-FLAT CLASSIC Naścienny czytnik transponderów UNIQUE w płaskiej obudowie Podstawowe cechy : zasilanie od 3V do 6V 4 formaty danych wyjściowych POWER LED w kolorze żółtym czerwono-zielony READY LED sterowany

Bardziej szczegółowo

Instrukcja do ćwiczenia : Matryca komutacyjna

Instrukcja do ćwiczenia : Matryca komutacyjna Instrukcja do ćwiczenia : Matryca komutacyjna 1. Wstęp Każdy kanał w systemach ze zwielokrotnieniem czasowym jest jednocześnie określany przez swoją współrzędną czasową T i współrzędną przestrzenną S.

Bardziej szczegółowo

ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC ZL4PIC uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC (v.1.0) ZL4PIC Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC 1 Zestaw jest przeznaczony dla elektroników zajmujących się aplikacjami

Bardziej szczegółowo

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q LABORAORIUM PROCESORY SYGAŁOWE W AUOMAYCE PRZEMYSŁOWEJ Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q 1. Zasady arytmetyki stałoprzecinkowej. Kody stałopozycyjne mają ustalone

Bardziej szczegółowo

Architektura komputerów. Komputer Procesor Mikroprocesor koncepcja Johna von Neumanna

Architektura komputerów. Komputer Procesor Mikroprocesor koncepcja Johna von Neumanna Architektura komputerów. Literatura: 1. Piotr Metzger, Anatomia PC, wyd. IX, Helion 2004 2. Scott Mueller, Rozbudowa i naprawa PC, wyd. XVIII, Helion 2009 3. Tomasz Kowalski, Urządzenia techniki komputerowej,

Bardziej szczegółowo

Podstawy Informatyki Elementarne podzespoły komputera

Podstawy Informatyki Elementarne podzespoły komputera Podstawy Informatyki alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu 1 Reprezentacja informacji Podstawowe bramki logiczne 2 Przerzutniki Przerzutnik SR Rejestry Liczniki 3 Magistrala Sygnały

Bardziej szczegółowo

PRZERZUTNIKI: 1. Należą do grupy bloków sekwencyjnych, 2. podstawowe układy pamiętające

PRZERZUTNIKI: 1. Należą do grupy bloków sekwencyjnych, 2. podstawowe układy pamiętające PRZERZUTNIKI: 1. Należą do grupy bloków sekwencyjnych, 2. podstawowe układy pamiętające Zapamiętywanie wartości wybranych zmiennych binarnych, jak również sekwencji tych wartości odbywa się w układach

Bardziej szczegółowo

1.2 Schemat blokowy oraz opis sygnałów wejściowych i wyjściowych

1.2 Schemat blokowy oraz opis sygnałów wejściowych i wyjściowych Dodatek A Wyświetlacz LCD. Przeznaczenie i ogólna charakterystyka Wyświetlacz ciekłokrystaliczny HY-62F4 zastosowany w ćwiczeniu jest wyświetlaczem matrycowym zawierającym moduł kontrolera i układ wykonawczy

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

Ćwiczenie 9 Częstościomierz oparty na µc 8051(8052)

Ćwiczenie 9 Częstościomierz oparty na µc 8051(8052) Laboratorium Techniki Mikroprocesorowej Informatyka studia dzienne Ćwiczenie 9 Częstościomierz oparty na µc 8051(8052) Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z możliwościami zastosowania mikrokontrolerów

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

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

TECHNIKA MIKROPROCESOROWA

TECHNIKA MIKROPROCESOROWA LABORATORIUM TECHNIKA MIKROPROCESOROWA Port transmisji szeregowej USART MCS'51 Opracował: Tomasz Miłosławski 1. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się ze sposobami komunikacji mikrokontrolera

Bardziej szczegółowo

Pamięci półprzewodnikowe w oparciu o książkę : Nowoczesne pamięci. Ptc 2013/2014 13.12.2013

Pamięci półprzewodnikowe w oparciu o książkę : Nowoczesne pamięci. Ptc 2013/2014 13.12.2013 Pamięci półprzewodnikowe w oparciu o książkę : Nowoczesne pamięci półprzewodnikowe, Betty Prince, WNT Ptc 2013/2014 13.12.2013 Pamięci statyczne i dynamiczne Pamięci statyczne SRAM przechowywanie informacji

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

Architektura komputerów. Asembler procesorów rodziny x86

Architektura komputerów. Asembler procesorów rodziny x86 Architektura komputerów Asembler procesorów rodziny x86 Architektura komputerów Asembler procesorów rodziny x86 Rozkazy mikroprocesora Rozkazy mikroprocesora 8086 można podzielić na siedem funkcjonalnych

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Tydzień 9 Pamięć operacyjna Właściwości pamięci Położenie Pojemność Jednostka transferu Sposób dostępu Wydajność Rodzaj fizyczny Własności fizyczne Organizacja Położenie pamięci

Bardziej szczegółowo

2.1 Porównanie procesorów

2.1 Porównanie procesorów 1 Wstęp...1 2 Charakterystyka procesorów...1 2.1 Porównanie procesorów...1 2.2 Wejścia analogowe...1 2.3 Termometry cyfrowe...1 2.4 Wyjścia PWM...1 2.5 Odbiornik RC5...1 2.6 Licznik / Miernik...1 2.7 Generator...2

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

Techniki mikroprocesorowe i systemy wbudowane

Techniki mikroprocesorowe i systemy wbudowane Intel 8051 układy Techniki mikroprocesorowe i systemy wbudowane Wykład 6 Układy oparte na procesorach rodziny Intel 51 Wojciech Kordecki wojciech.kordecki@pwsz-legnica.eu Państwowa Wyższa Szkoła Zawodowa

Bardziej szczegółowo

Obszar rejestrów specjalnych. Laboratorium Podstaw Techniki Mikroprocesorowej Instytut Mikroelektroniki i Optoelektroniki PW

Obszar rejestrów specjalnych. Laboratorium Podstaw Techniki Mikroprocesorowej Instytut Mikroelektroniki i Optoelektroniki PW Laboratorium Podstaw Techniki Mikroprocesorowej Instytut Mikroelektroniki i Optoelektroniki PW MIKROKONTROLER 85 - wiadomości podstawowe. Schemat blokowy mikrokontrolera 85 Obszar rejestrów specjalnych

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

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

UKŁAD SCALONY. Cyfrowe układy można podzielić ze względu na różne kryteria, na przykład sposób przetwarzania informacji, technologię wykonania.

UKŁAD SCALONY. Cyfrowe układy można podzielić ze względu na różne kryteria, na przykład sposób przetwarzania informacji, technologię wykonania. UKŁDAY CYFROWE Układy cyfrowe są w praktyce realizowane różnymi technikami. W prostych urządzeniach automatyki powszechnie stosowane są układy elektryczne, wykorzystujące przekaźniki jako podstawowe elementy

Bardziej szczegółowo

Opis czytnika TRD-80 CLASSIC ver Moduł czytnika transponderów UNIQUE z wbudowaną anteną

Opis czytnika TRD-80 CLASSIC ver Moduł czytnika transponderów UNIQUE z wbudowaną anteną TRD-80 CLASSIC Moduł czytnika transponderów UNIQUE z wbudowaną anteną Podstawowe cechy : zasilanie od 3V do 6V zintegrowana antena 4 formaty danych wyjściowych wyjście BEEP wyjście PRESENT zasięg odczytu

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

Cyfrowe Elementy Automatyki. Bramki logiczne, przerzutniki, liczniki, sterowanie wyświetlaczem

Cyfrowe Elementy Automatyki. Bramki logiczne, przerzutniki, liczniki, sterowanie wyświetlaczem Cyfrowe Elementy Automatyki Bramki logiczne, przerzutniki, liczniki, sterowanie wyświetlaczem Układy cyfrowe W układach cyfrowych sygnały napięciowe (lub prądowe) przyjmują tylko określoną liczbę poziomów,

Bardziej szczegółowo

Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski

Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski Układ sterowania, magistrale i organizacja pamięci Dariusz Chaberski Jednostka centralna szyna sygnałow sterowania sygnały sterujące układ sterowania sygnały stanu wewnętrzna szyna danych układ wykonawczy

Bardziej szczegółowo

Kod produktu: MP01611

Kod produktu: MP01611 CZYTNIK RFID ZE ZINTEGROWANĄ ANTENĄ, WYJŚCIE RS232 (TTL) Moduł stanowi tani i prosty w zastosowaniu czytnik RFID dla transponderów UNIQUE 125kHz, umożliwiający szybkie konstruowanie urządzeń do bezstykowej

Bardziej szczegółowo

1. Cel ćwiczenia. 2. Podłączenia urządzeń zewnętrznych w sterowniku VersaMax Micro

1. Cel ćwiczenia. 2. Podłączenia urządzeń zewnętrznych w sterowniku VersaMax Micro 1. Cel ćwiczenia Celem ćwiczenia jest zaprojektowanie sterowania układem pozycjonowania z wykorzystaniem sterownika VersaMax Micro oraz silnika krokowego. Do algorytmu pozycjonowania wykorzystać licznik

Bardziej szczegółowo

4. Karta modułu Slave

4. Karta modułu Slave sygnały na magistralę. Można wyróżnić trzy typy układów scalonych takie jak bramki o otwartym kolektorze wyjściowym, bramki trójstanowe i bramki o przeciwsobnym wzmacniaczu wyjściowym. Obciążalność prądową

Bardziej szczegółowo

Technika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury

Technika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury Technika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury Cel ćwiczenia: Głównym celem ćwiczenia jest nauczenie się obsługi klawiatury. Klawiatura jest jednym z urządzeń wejściowych i prawie zawsze występuje

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

BADANIE PRZERZUTNIKÓW ASTABILNEGO, MONOSTABILNEGO I BISTABILNEGO

BADANIE PRZERZUTNIKÓW ASTABILNEGO, MONOSTABILNEGO I BISTABILNEGO Ćwiczenie 11 BADANIE PRZERZUTNIKÓW ASTABILNEGO, MONOSTABILNEGO I BISTABILNEGO 11.1 Cel ćwiczenia Celem ćwiczenia jest poznanie rodzajów, budowy i właściwości przerzutników astabilnych, monostabilnych oraz

Bardziej szczegółowo