architektura komputerów w 1 1

Podobne dokumenty
architektura komputerów w 1 1

CPU architektura i rejestry

Lista instrukcji procesora 8051 część 2 Skoki i wywołania podprogramów, operacje na stosie, operacje bitowe

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

MIKROPROCESORY architektura i programowanie

Programowanie mikrokontrolerów (CISC)

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

Rozszerzalne kody operacji (przykład)

CYKL ROZKAZOWY = 1 lub 2(4) cykle maszynowe

TMiK Podstawy Techniki Mikroprocesorowej. Lidia Łukasiak

MIKROPROCESORY I MIKROKONTROLERY INSTRUKCJE / KOMENDY / ROZKAZY: PRZEGLĄD I KILKA PRZYKŁADÓW DLA PRZYPOMNIENIA, GŁÓWNE REJESTRY ROBOCZE CPU:

LABORATORIUM nr 1. Temat: Wstęp do mikrokontrolerów rodziny MCS-51

IV PROGRAMOWANIE MIKROKOMPUTERA Technika Cyfrowa 2. Wykład 4: Programowanie mikrokomputera 8051

Programowanie niskopoziomowe

Architektura mikrokontrolera MCS51

Procesory rodziny x86. Dariusz Chaberski

Architektura mikrokontrolera MCS51

Instytut Teleinformatyki

Mikrokontroler Intel dr inż. Wiesław Madej

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

Lista rozkazów mikrokontrolera 8051

Documentation. Podstawy techniki mikroprocesorowej ETEW006 Architektura wybranych mikrokontrolerów. high performance based microcontroller (3/3)

Architektura typu Single-Cycle

Akademia Górniczo- Hutmicza w Krakowie Katedra Elektroniki WIET

Asembler - język maszynowy procesora

petla:... ; etykieta określa adres w pamięci kodu (docelowe miejsce skoku) DJNZ R7, petla

CPU. Architektura FLAGS Bit: dr Paweł Kowalczyk; DPTNS, KFCS UŁ. SI 16 bit. 16 bit. 16 bit.

Liczniki, rejestry lab. 08 Mikrokontrolery WSTĘP

Przerwania w architekturze mikrokontrolera X51

Programowanie mikrokontrolera 8051

Technika mikroprocesorowa I Wykład 4

Wstęp do informatyki. Architektura co to jest? Architektura Model komputera. Od układów logicznych do CPU. Automat skończony. Maszyny Turinga (1936)

LCD (Liquid Crystal Display)

Instytut Teleinformatyki

Ćwiczenie 30. Techniki mikroprocesorowe Programowanie w języku Asembler mikrokontrolerów rodziny '51

organizacja procesora 8086

Politechnika Warszawska

Przykład oprogramowania protokołu komunikacyjnego dla łącza równoległego pomiędzy procesorem master i wieloma procesorami slave

. III atyka, sem, Inform Symulator puterów Escape rchitektura kom A

Pracownia elektryczno-elektroniczna klasa IV

PROCESORY ARM TRUDNO ZNALEŹĆ PROCESORY O TAK LICZNYCH, ORYGINALNYCH, NOWYCH, POMYSŁOWYCH ROZWIĄZANIACH!

Pracownia elektryczno-elektroniczna klasa IV

Lista Rozkazów: Język komputera

Podstawy Techniki Mikroprocesorowej

Hardware mikrokontrolera X51

Zerowanie mikroprocesora

Instytut Teleinformatyki

dr inż. Rafał Klaus Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia i ich zastosowań w przemyśle" POKL

MIKROKOMPUTERY JEDNOUKŁADOWE RODZINY MCS - 51

Struktura i działanie jednostki centralnej

Omówimy przykłady 8-mio bitowego licznika z wyposażenia ADuC812 (CISC 51) oraz mikrokontrolera ATMega128 należącego do rodziny AVR.

Komputery klasy PC. Dariusz Chaberski

Podstawy techniki mikroprocesorowej. Dr inż. Grzegorz Kosobudzki p.311a A-5. Tel

Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780

Systemy wbudowane. Wprowadzenie. Wprowadzenie. Mikrokontroler 8051 Budowa

Architektura komputerów

(Rysunek z książki T.Starecki. Mikokontrolery jednoukładowe rodziny 51. NOZOMI W-wa 1996)

J. Duntemann Zrozumieć Assembler Leo J. Scanlon Assembler 8086/8088/80286 S. Kruk Programowanie w Języku Assembler

Wstęp do assemblera MA51

Techniki mikroprocesorowe i systemy wbudowane

Opis mikrokontrolera 8051 Lista rozkazowa Timery

Mikroprocesory i mikrosterowniki

Literatura. Podstawy techniki mikroprocesorowej ETEW006 Stos. Jak rozwiązać problem? Po co komu stos? Stack. Typy stosu

ZAPOZNANIE SIĘ Z ZESTAWEM DYDAKTYCZNYM ZD537, OPROGRAMOWANIEM µvision 2 ORAZ OPERACJE NA PAMIĘCIACH

MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW

end start ; ustawienie punktu startu programu i koniec instrukcji w assemblerze.

Mikrokontrolery w systemach pomiarowo sterujących

MIKROKONTROLERY I MIKROPROCESORY

Wstęp. do języka C na procesor (kompilator RC51)

TECHNIKA MIKROPROCESOROWA

Ćwiczenie 1. (sd 2) 0x0000 0x0003 0x000B 0x0013 0x001B 0x0023

Architektura typu multi cycle

Sprzęt i architektura komputerów

Urządzenia peryferyjne RS-232. Wykład 2

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

Sprzęt i architektura komputerów

Podstawy Techniki Mikroprocesorowej

Ćw. 5. Obsługa portu szeregowego UART w mikrokontrolerach 8051.

IEEE Centronics

START: ; start programu od adresu 0100H ; zerowanie komórek od 01H do 07FH ( 1 dec dec)

Programowanie komputera

AGH Akademia Górniczo-Hutnicza w Krakowie Katedra Elektroniki

Język programowania C51 dla mikroprocesorów rodziny MCS51

Mikrokontrolery 8 bit - wprowadzenie

Mikroprocesory i Mikrosterowniki

Mikroprocesory i mikrosterowniki

MIKROPROCESORY architektura i programowanie

Akademia Górniczo-Hutnicza w Krakowie Katedra Elektroniki

Moduł wspierający diagnostykę i sprzętowe debugowanie

Ćwiczenie 2. Siedmiosegmentowy wyświetlacz LED

Dyrektywy asemblerowe

Systemy wbudowane. Przykłady kodu Assembler

Programowanie Mikrokontrolerów

Start Bity Bit Stop 1 Bit Par Rys. 1

Technika mikroprocesorowa

Sprzęt komputera - zespół układów wykonujących programy wprowadzone do pamięci komputera (ang. hardware) Oprogramowanie komputera - zespół programów

ad a) Konfiguracja licznika T1 Niech nasz program składa się z dwóch fragmentów kodu: inicjacja licznika T1 pętla główna

Technika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury

DSM-51 v2 Dydaktyczny System Mikroprocesorowy. DSM51ASS (Asembler 8051) wersja 1.01

WOJSKOWA AKADEMIA TECHNICZNA

Transkrypt:

8051 Port P2 Port P3 Serial PORT Timers T0, T1 Interrupt Controler DPTR Register Program Counter Program Memory Port P0 Port P1 PSW ALU B Register SFR accumulator STRUCTURE OF 8051 architektura komputerów w 1 1

128 B HIGH AREA SFR REGISTERS 128 bajtów dolnego obszaru 00h 8051 WEWNĘTRZNA PAMIĘĆ DANYCH On-chip memory area External memory area 128 bytes On-chip Higher area SFR registers area External program memory External data memory 00h 128 bytes On-chip Lower area 8051 MEMORY architektura komputerów w 1 2

PROG COUNTER (16 bits) DPTR register (16 bits) On-chip memory area External memory area immediately (8 bit address in instruction) R0 or R1 (8 bits) registers 128 bytes On-chip Higher area SFR registers area External program memory External data memory 00h 128 bytes On-chip Lower area 8051 ADRESACJA PAMIĘCI 30h 2Fh 20h 1Fh 18h 17h 10h 0Fh 8h 7h 0h R7 R2 R1 RO RB3 RB2 RB1 80 Bytes of general purpose memory bit- addressable area GENERAL PURPOSE REGISTERS BANK SELECTION BY PSW RS1, RS2 BITS COMBINATION 8051 LOWER AREA OF ON-CHIP DATA MEMORY architektura komputerów w 1 3

30h 2Fh 81h 23H SP register 20h 1Fh 18h 17h 10h 0Fh 8h 7h R7 RB3 RB2 RB1 On-chip data Stack pointer points stack top 0h R2 R1 RO 8051 STACK 30h 2Fh 81h 23H SP register 20h 1Fh 18h 17h 10h 0Fh 8h 7h R7 RB3 RB2 RB1 On-chip data After hardware reset SP contains 7H 0h R2 R1 RO 8051 STACK architektura komputerów w 1 4

128 Byte on-chip higher data general purpose memory area 8051 HIGHER ADREA OF ON-CHIP 240 (0F0H) B ge ne ral purpose re gister 224 (0E0H) ACC accumulator 208 (0D0H) PSW program status word 184 (0B8H) IP interrupt priority register 176 (0B0H) P3 i/o port 3 168 (0A8H) IE interrupt mas k 160 (0A0H) P2 i/o port 2 153 (99H) SBUF serial port data regis ter 152 (98H) S CON serial port control regis ter 144 (90H) P1 i/o port 1 141 (8DH) TH1 timer 0 data regis ter higher part 140 (8CH) TH0 timer 0 data regis ter lower part 139 (8BH) TL1 timer 1 data regis ter higher part 138 (8AH) TL0 timer 1 data regis ter lower part 137 (89H) TMOD timer 0 and 1 mode register 136 (88H) TCON timer 0 and 1 control regis ter 135 (87H) PCON Rejes tr s terujący s tanami uśpienia 131 (83H) DPH DPTR registe r higher part 130 (82H) DPL DPTR registe r lower part 129 (81H) SP stack pointe r 128 (80H) P0 i/o port 0 8051 SPECIAL FUNCTION REGISTERS architektura komputerów w 1 5

bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 C AC F0 RS1 RS0 OV - P C AC F0 RS1 RS0 OV F1 P Carry Flag Auxiliary Carry Flag not used Register bank select higher bit Register bank select lower bit ocerflow not used P - Parity bit RS1 RS0 0 0 bank 0 selected 0 1 bank 1 selected 1 0 bank 2 selected 1 1 bank 3 selected 8051 PROG STATUS WORD REGISTER (PSW) Tryb adresowania Sposób wyznaczania adresu Zasoby adresowane w tym trybie REJESTROWY Operandem jest rejestr R0- R7, A, B, DPTR(16bitowy) lub C(1bitowy) BEZPOŚREDNI Adres operandu jest podany explicite w rozkazie NATYCHMIASTOWY Operandem jest stała znajdująca się w pamięci programu. Operand jest jednym z bajtów rozkazu. Adres wyznacza rejestr PC POŚREDNI ZAWARTOŚCIĄ REJESTRU POŚREDNI SUMĄ ZAWARTOŚCI REJESTRU BAZOWEGO I INDEKSU Adres operandu wyznacza zawartość rejestru R0, R1, DPTR lub (dla rozkazów PUSH i POP) SP Adres operandu wyznacza suma zawartości rejestrów DPTR i A lub PC i A Rejestry R0-R7 z aktywnego banku, A, B, DPTR(16bitowy) lub C(1bitowy) Dolny obszar pamięci wewnętrznej, rejestry SFR, bity adresowalne bezpośrednio Pamięć programu Wewnętrzna i zewnętrzna pamięć danych Pamięć programu 8051 TRYBY ADRESACJI architektura komputerów w 1 6

Adressiong mode Address calculation method Resources addressed with this method REGISTER Register is pecified in instruction R0-R7 regidters from selected bank, A, B, DPTR(16bit) or C(1bit) registers DIRECT address of memory location containing data is specified in instruction On-chip lower area, SFR registers, bits from bit adressable area IMMEDIATE Operand is located as a part of instriuction. Program memory REGISTER INDIRECT Operand addres is containd in adress register R0, R1, DPTR or SP Internal and external data INDIRECT INDEKSED Operand addres is a sum of DPTR and A registers or PC and A registers content Program memory 8051 ADDRESSING MODES Assembler INSTRUCTIONZapis rozkazu w <INSTRUCTION CODE> <argument1>,<argument 2> examples: ADD A,R0 MOV A,@R1 MOV DA CPL R0,#40H A 8051 INSTRUCTION SET architektura komputerów w 1 7

arguments in 8051 Assembler 12345 - decimal number 12345H heksadecimal number 10110000101B binary number A - accumulator B - B register Rn - R0...7 register direct - register or memory location addres (decimal heksadecimal or binary number, for example in instruction MOV A,166) bit - bit address @Ri - indirect addresing mode with R0 or R1 register @DPTR - indirect addresing mode with DPTR register #data - 8bit constant (immediate mode), e.g. #04FH #data16-16bit constant (immediate mode), e.g. #0F06H addr16-16 bit jump address (LJMP instruction) or subroutine address (LCALL) addr11-11 bit jump address (AJMP) or subroutine address (ACALL) rel - integer with sign (U2 code) determining short jump SJMP or conditional jump distance (short forward or backward jump with relation to actual PC content) 8051 INSTRUCTION SET Instruction examples rozkazów ADD A,<source> example: ADD A,R0 function A:= (A)+(R0) ADD A,8 A:= (A)+(8) ADD A,#8 function A:= (A)+8 MOV <destination>,< source > example : MOV A, R7 ;mov to A content of R7 register MOV R7, A ; mov to R7 content of A register MOV R0,#30H ; mov constant 30H to R0 register MOV R0, 30H ; mov content of 48th byte of on-chip u to R0 register MOV 30H, R0 in the opposite dirrection; MOV 30H, #45H ; mov to 48(30H)th byte of constant 45H MOV A, @R0 ; mov to accumulator content of MOV @R0, A ;in the opposite dirrection MOV @R0, 30H ; mov to loction pointed by a content of R0 register content of 30Hth byte of MOV @R0, #30H ; mov to location pointed by content of R0 register constant 30H MOV A, #35H ; load to accumulator constant 35H MOV A, 35H ; load to accumulator content of 35Hth byte of on-chip MOV 35H, A ; mov in the opposite dirrection MOV 35H, 30H ; mov the 30Hth location of to MOV P2, P1 ; mov the content of SFR Port 1 do SFR Port 2 MOV 35H, @R1 ; mov to 35Hth byte of content of location pointed by R1 register MOV DPTR,#data16 example : MOV DPTR,#01FCH ;load DPTR:=01FCH 8051 INSTRUCTION SET EXAMPLES architektura komputerów w 1 8