Mikrokontroler 80C51

Podobne dokumenty
MIKROKONTROLERY I MIKROPROCESORY

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

MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW

2. Architektura mikrokontrolerów PIC16F8x... 13

Organizacja typowego mikroprocesora

Informacje ogólne o układzie 8051.

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

LEKCJA TEMAT: Współczesne procesory.

Liczniki, rejestry lab. 08 Mikrokontrolery WSTĘP

CYKL ROZKAZOWY = 1 lub 2(4) cykle maszynowe

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

Magistrala systemowa (System Bus)

Podstawy działania układów cyfrowych...2 Systemy liczbowe...2 Kodowanie informacji...3 Informacja cyfrowa...4 Bramki logiczne...

Architektura komputerów

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

Systemy wbudowane. Wprowadzenie. Wprowadzenie. Mikrokontroler 8051 Budowa

Struktura i działanie jednostki centralnej

architektura komputerów w 1 1

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

Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2

Wstęp do informatyki. System komputerowy. Magistrala systemowa. Architektura komputera. Cezary Bolek

Budowa i zasada działania komputera. dr Artur Bartoszewski

Układ wykonawczy, instrukcje i adresowanie. Dariusz Chaberski

Podstawy techniki cyfrowej Mikroprocesory. Mgr inż. Bogdan Pietrzak ZSR CKP Świdwin

ARCHITEKTURA PROCESORA,

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

Architektura mikrokontrolera MCS51

Tranzystor JFET i MOSFET zas. działania

Architektura mikrokontrolera MCS51

Architektura komputerów. Asembler procesorów rodziny x86

WPROWADZENIE Mikrosterownik mikrokontrolery

Lista rozkazów mikrokontrolera 8051

Technika Mikroprocesorowa

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

TMiK Podstawy Techniki Mikroprocesorowej. Lidia Łukasiak

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

Architektura komputera

CPU architektura i rejestry

Przykładowe pytania DSP 1

Technika mikroprocesorowa I Wykład 2

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

Programowanie mikrokontrolera 8051

Architektura komputerów Wykład 2

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

Hardware mikrokontrolera X51

Wstęp Architektura... 13

Technika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury

LEKCJA TEMAT: Zasada działania komputera.

Laboratorium 1: Wprowadzenie do środowiska programowego. oraz podstawowe operacje na rejestrach i komórkach pamięci

organizacja procesora 8086

Technika mikroprocesorowa I Wykład 4

Pracownia elektryczna i elektroniczna. Elektronika cyfrowa. Ćwiczenie nr 5.

Programowanie niskopoziomowe

Wykład Mikroprocesory i kontrolery

Asembler - język maszynowy procesora

Organizacja pamięci VRAM monitora znakowego. 1. Tryb pracy automatycznej

Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych

Technika mikroprocesorowa I Wykład 3

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

Programowanie w językach asemblera i C

Mikroprocesor Operacje wejścia / wyjścia

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

Arytmetyka liczb binarnych

Procesory. Schemat budowy procesora

Ćwiczenie 01 - Strona nr 1 ĆWICZENIE 01

Sprzęt i architektura komputerów

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

Budowa Mikrokomputera

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

Wprowadzenie do architektury komputerów systemy liczbowe, operacje arytmetyczne i logiczne

Mikroprocesory i Mikrosterowniki

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

Mikrokontrolery 8 bit - wprowadzenie

Bramki logiczne Podstawowe składniki wszystkich układów logicznych

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

MIKROPROCESORY architektura i programowanie

dr inż. Jarosław Forenc Dotyczy jednostek operacyjnych i ich połączeń stanowiących realizację specyfikacji typu architektury

dr inż. Jarosław Forenc

Układy mikroprogramowane

Politechnika Warszawska

Mikroprocesory i mikrosterowniki

Liczniki, rejestry lab. 09 Mikrokontrolery 8051 cz. 1

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

SYSTEM MIKROPROCESOROWY

Projektowanie. Projektowanie mikroprocesorów

Podstawy Techniki Mikroprocesorowej

Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1

Technika mikroprocesorowa I Wykład 1

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.

WSTĘP DO ELEKTRONIKI

Systemy mikroprocesorowe. Literatura podręcznikowa. Przedmioty związane. Przykłady systemów wbudowanych. Pojęcie systemu wbudowanego embedded system

WSTĘP. Budowa bramki NAND TTL, ch-ka przełączania, schemat wewnętrzny, działanie 2

IC200UDR002 ASTOR GE INTELLIGENT PLATFORMS - VERSAMAX NANO/MICRO

Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780

Kod znak-moduł. Wartość liczby wynosi. Reprezentacja liczb w kodzie ZM w 8-bitowym formacie:

Kod produktu: MP01611-ZK

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

UTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386

Wstęp: Interfejs portu równoległego 6821 i portu szeregowego 6850 firmy Motorola

Przerwania, polling, timery - wykład 9

Transkrypt:

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 liczbowe. Najczęściej (choć nie zawsze) liczba poziomów napięć jest równa dwa, a poziomom przypisywane są cyfry 0 i 1, wówczas układy cyfrowe realizują operacje zgodnie z algebrą Boole a i z tego powodu nazywane są teŝ układami logicznymi. Obecnie układy cyfrowe budowane są w oparciu o bramki logiczne realizujące elementarne operacje znane z algebry Boole a: iloczyn logiczny (AND, NAND), sumę logiczną (OR, NOR), negację NOT, róŝnicę symetryczną (XOR) itp. Ze względu na stopień skomplikowania współczesnych układów wykonuje się je w postaci układów scalonych. Mikroprocesor układ cyfrowy wykonany jako pojedynczy układ scalony o wielkim stopniu integracji zdolny do wykonywania operacji cyfrowych według dostarczonego ciągu instrukcji. Mikroprocesor (w skrócie µp lub CPU) jest centralną jednostką obliczeniową (Central Processing Unit) w pojedynczym półprzewodnikowym układzie scalonym. Pierwszy mikroprocesor działał w oparciu o słowa 4-bitowe, dzięki czemu tranzystory tworzące jego obwody logiczne mogły zmieścić się w jednym układzie. System mikroprocesorowy lub mikrosystem system do realizacji dowolnego zadania dającego się sprowadzić do przetwarzania wektorów informacji cyfrowej. W skład takiego systemu wchodzi sprzęt elektroniczny i oprogramowanie. Typowy system mikroprocesorowy składa się z następujących części: Mikroprocesora (µp) Pamięci operacyjnej RAM Pamięci stałej ROM Układów wejścia-wyjścia Układów sterujących przepływem informacji między tymi elementami: o magistrale danych i adresowe o linie odczytu MEMR (z RAM i ROM) i zapisu MEMW (w pamięci RAM) o linie odczytu IOR i zapisu IOW w urządzeniach wejścia-wyjścia. Mikrokontroler (skrót ang. MCU lub µc) - system mikroprocesorowy zrealizowany w postaci pojedynczego układu scalonego, zawierającego jednostkę centralną (CPU), pamięć RAM oraz na ogół pamięć programu i rozbudowane układy wejścia-wyjścia. Mikrokontroler nazywany jest mikroprocesorem jednoukładowym. Mikrokontroler stanowi uŝyteczny i całkowicie autonomiczny system mikroprocesorowy, nie wymagający uŝycia dodatkowych elementów, których wymagałby do pracy tradycyjny mikroprocesor. Mikrokontrolery przystosowane są do bezpośredniej współpracy z rozmaitymi urządzeniami zewnętrznymi, np. w sprzęcie AGD, układach kontrolno-pomiarowych, w przemysłowych układach automatyki, w telekomunikacji itp. Mikrokontroler 80C51

DSM-51 * STRONA 2 * Układ 80C51 jest jednoukładowym mikrokontrolerem 8-bitowym. Mikrokontroler jest umieszczony w 40-nóŜkowej obudowie typu DIL. DIP (ang. Dual In-line Package), czasami nazywany DIL w elektronice rodzaj obudowy elementów elektronicznych. Na poniŝszym rysunku przedstawiono widok ogólny układu 80C51 wraz z opisem końcówek: Końcówki 1-8 (P1.0-P1.7): są to wyprowadzenia uniwersalnego portu wejścia/wyjścia Końcówka 9 (RST): jest to końcówka Reset słuŝąca do zerowania mikrokontrolera Końcówki 10-17 (P3.0-P3.7): są to wyprowadzenia uniwersalnego portu wejścia/wyjścia Końcówki 18, 19 (XTAL1, XTAL2): są to wyprowadzenia słuŝące do podłączenia rezonatora lub zewnętrznego generatora impulsów zegarowych. Końcówka 20 (GND): wyprowadzenie masy układu. Końcówki 21-28 (P2.0-P2.7): są to wyprowadzenia uniwersalnego portu wejścia/wyjścia Końcówka 29 (PSEN'): końcówka informująca o odczycie zewnętrznej pamięci programu. Końcówka 30 (ALE): sygnał wyjściowy słuŝący do zatrzaskiwania młodszej części adresu przy dostępie do pamięci zewnętrznej. Końcówka 31 (EA'): stan na tym wejściu określa sposób współpracy z pamięcią programu. Końcówki 32-39 (P0.0-P0.7): są to wyprowadzenia uniwersalnego portu wejścia/wyjścia Końcówka 40 (Vcc): końcówka zasilania układu. Vcc=5V +/- 0.25V Rysunek 1 Układ80C51.

DSM-51 * STRONA 3 * Temat : Architektura systemu DSM-51. Architektura mikrokontrolera 80C51 Rysunek 2 Architektura układu 80C51. Schemat ideowy mikrokontrolera 80C51 Mikroprocesor 8051 ma wbudowaną 4096 bajtową pamięć programu ROM. Pamięć RAM została rozszerzona do 128 bajtów. Sygnały CPU: Wejściowe: - HOLD sygnał wstrzymania; - RESET sygnał inicjalizacji; - STEP sygnał pracy krokowej; Wyjściowe: - MW zapis pamięci; - MR odczyt pamięci; - IOW zapis urządzenia; - IOR odczyt urządzenia;

DSM-51 * STRONA 4 * - HLDA potwierdzenie wstrzymania procesora; Rysunek 3 Uproszczony schemat ideowy układu 80C51. Rejestry Rejestr procesora miejsce pamiętania pewnej liczby bitów W mikroprocesorze 8051 wyróŝniamy następujące rejestry R0,..., R7 8-bitowe, 4 banki Rejestry: Akumulator oraz B 8-bitowe Rejestr DPTR- 16-bitowy Rejestr PC 16-bitowy Wskaźnik stosu SP Słowo stanu procesora PSW Rejestry specjalne odpowiadają za we/wy cyfrowe, liczniki/zegary, transmisję szeregową, przerwania Akumulator najczęściej zawiera jeden z operandów i zapisywany jest w nim wynik

DSM-51 * STRONA 5 * Rejestr B wykorzystywany przy operacjach mnoŝenia i dzielenia. Zapisywany jest w nim starszy bajt wyniku mnoŝenia lub reszta z dzielenia. Rejestr rozkazów zapisywany jest w nim kod operacji, którą ma wykonać procesor. Rejestr specjalny PSW bezpośrednio współpracuje z arytmometrem. Jego zawartość opisuje cechy wyniku ostatnio wykonywanej operacji. Słowo stanu PSW (Processor Status Word) bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 C AC F0 RS1 RS0 OV - P Znaczenie poszczególnych bitów jest następujące: P (ang. parity) - znacznik parzystości; ustawiony na 1 informuje o nieparzystej liczbie jedynek w akumulatorze. Jest ustawiany po wykonaniu kaŝdego rozkazu, w zaleŝności od zawartości akumulatora. OV (ang. overflow) - znacznik nadmiaru dla dodawania i odejmowania w kodzie U2. Dla mnoŝenia 1 wskazuje niezerową wartość rejestru B, dla dzielenia 1 oznacza wystąpienie dzielenia przez zero. RS0, RS1 bity wyboru bloku rejestrów roboczych. RS1 RS0 Wybrany blok: 0 0 blok 0 0 1 blok 1 1 0 blok 2 1 1 blok 3 Znaczenie bitów RS0 i RS1 F0 - znacznik uniwersalny do dowolnego wykorzystania. AC (ang. auxiliary carry) - znacznik przeniesienia połówkowego; ustawiany w przypadku wystąpienia przeniesienia z ACC.3 na ACC.4. C (ang. carry) - znacznik przeniesienia; ustawiany w przypadku wystąpienia przeniesienia z pozycji siódmego bitu akumulatora. Blok arytmetyczno logiczny ALU jest to układ wykonawczy procesora, poniewaŝ wykonuje on większośc rozkazów zleconych procesorowi. Blok ALU jest układem kombinacyjnym, który realizuj róŝne funkcje w zaleŝności od zaprogramowanej operacji tj. rozkazu umieszczonego w programie. Rozkazy te mogą wykonywać operacje arytmetyczne lub logiczne. Argumenty operacji wykonywanych przez ALU mogą pochodzić z trzech źródeł: a) programu b) rejestrów procesora c) komórek pamięci

DSM-51 * STRONA 6 * PC (licznik rozkazów) zawiera adres aktualnego rozkazu przeznaczonego do wykonania. Rozkaz ten jest pobierany z pamięci do rejestru rozkazów (rejestr ten nie jest dostępny programowo). Na podstawie zawartości rejestru rozkazów, dekoder rozkazów steruje wyborem źródła argumentu, miejsca umieszczenia wyniku, funkcjami arytmometru itp. w ten sposób mikroprocesor wykonuje zadaną operację. JeŜeli nie jest wykonywany rozkaz skoku, to zawartość licznika rozkazów jest inkrementowana po odczycie kaŝdego bajtu z pamięci programu Pamięć danych. Na wewnętrzną pamięć danych składają się dwa bloki: 128 bajtów ciągłego obszaru pamięci RAM 128 bajtów niespójnego bloku rejestrów specjalnych (SFR) mikrokontrolera. Organizacja pamięci RAM Adresy 48-127 Pamięć danych uŝytkownika Adresy 32-47 Pamięć adresowana bitowo ( adresy 0-127 (0H-7FH) ) Adresy 24-31 Rejestry R0-R7 - blok 3 Adresy 16-23 Rejestry R0-R7 - blok 2 Adresy 8-15 Rejestry R0-R7 - blok 1 Adresy 0-7 Rejestry R0-R7 - blok 0 Lista rozkazów: W ogólnej liczbie 111 rozkazów moŝna wyróŝnić 42 róŝne typy instrukcji. WyróŜniamy instrukcje związane z działaniami arytmetycznymi, operacje logiczne (obejmujące funkcje OR, AND, EXCLUSIVE OR), instrukcje słuŝące do transmisji danych (mikroprocesor 8051 dysponuje 30 rozkazami do przesyłania danych pomiędzy akumulatorem, rejestrami, pamięcią i stosem), instrukcje skoku (dostępnych jest 13 rozkazów skoków warunkowych i 4 bezwarunkowe, wykorzystujące rozmaite tryby adresacji) Rodzaje adresacji: Dane w pamięci wewnętrznej RAM mogą być adresowane bezpośrednio lub pośrednio, poprzez rejestry R0 i R1 z aktualnie wybranego bloku rejestrów. Odnosi się to takŝe do danych w rejestrach funkcji specjalnych, których adresy zajmują lokacje od 128 do 256, a więc efektywnie całą górna część przestrzeni adresowej RAM. Rozkazy skoków są zwykle względne, w obrębie 256- bajtowej strony w przestrzenia adresowej ROM. Cechą specyficzną procesora 8051 jest długi skok lub rozkaz CALL, odnoszące się do dowolnej lokacji w obrębie 64KB pamięci adresowej, szczególnie przydatne przy korzystaniu z rozszerzonej zewnętrznej pamięci programu. Zewnętrzna pamięć danych jest adresowana za pośrednictwem specjalnego rejestru wskaźnika danych, co zapewnia adresowanie 16 bitowe. Odbywa się to przez przekazanie odpowiednich danych z akumulatora do rejestru wskaźnika danych, a następnie zastosowania rozkazu przesłania pośredniego (MOVE), by przetransferować dane z akumulatora do lokacji w pamięci, której adres jest określony zawartością rejestru wskaźnika danych. Rejestracja indeksowa jest łatwo realizowana przez inkrementację lub dekrementację

DSM-51 * STRONA 7 * Temat : Uniwersalne porty wejścia-wyjścia Ośmiobitowy port P0. Podstawowe funkcje portu to dwukierunkowa brama do wymiany. 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 zewnętrznej pamięci danych), w innym przypadku adres, w celu wybrania potrzebnej komórki z pamięci SRAM, do której ma być zapisana. Porty P0 ( młodsza część adresu (A0...A7) ) i P2 ( starsza część adresu (A8...A15) ) mogą adresować pamięć zewnętrzną. Ośmiobitowy port P1. Istotną zaletą portów uniwersalnych procesora jest moŝliwość indywidualnego ustawiania poziomu logicznego na kaŝdym wyprowadzeniu niezaleŝnie. Nie trzeba zatem zapisywać całej liczby do portu aby np. zmienić stan tylko na jednym wyprowadzeniu, wystarczy ustawić (rozkazem zwanym SETB) lub wyzerować (rozkazem CLR) odpowiedni bit rejestru portu P1, toteŝ np. ustawienie pinu P1.5 na logiczne 0 nastąpi poprzez wydanie polecenia: CLR P1.5 ( clr clear, ang. zeruj,wyczyść). Ośmiobitowy port P2. Są to wyprowadzenia drugiego 8 bitowego portu procesora. 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). Ośmiobitowy 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. Dodatkowe symbole na rysunku 1 tuŝ obok wyprowadzeń portu P3 sugerują Ŝe port moŝe teŝ spełniać inne dodatkowe funkcje (transmisję szeregową, przerwania zewnętrzne i timery). 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.

DSM-51 * STRONA 8 * Temat : Rozkazy mikrokontrolera 8051

DSM-51 * STRONA 9 * Temat : Rozkazy mikrokontrolera 8051 Operacje logiczne na bitach portu P1 Sygnalizatory LED i BUZZER Bity portu P1 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 Dioda LED BUZZER Znaczenie poszczególnych bitów jest następujące: Port 1 - Bit 7 - Dioda LED ( 0 dioda świeci, 1 dioda nie świeci) Port 1 - Bit 5 - Buzzer ( 0 buczek włączony, 1 buczek wyłączony) Programy do uruchomienia: LJMP START ORG 100H START: CLR P1.7 ;zeruj linię 7 w porcie P1 ;czyli wlacz diode STOP: ;nie wykonuj innych działań LJMP STOP ;- pozostań w pętli STOP LJMP START ORG 100H START: CLR P1.7 ;zeruj linię 7 w porcie P1 ;czyli wlacz diode STOP: ;nie wykonuj innych działań LJMP STOP ;- pozostań w pętli STOP