Architektura mikrokontrolera X51

19
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

Transcript of Architektura mikrokontrolera X51

Page 1: Architektura mikrokontrolera X51

Architekturamikrokontrolera MCS51

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

Page 2: Architektura mikrokontrolera X51

Architektura mikrokontroleraMCS51

Co siedzi w środku?...

Wersje μC 8051 są nieprawdopodobnie liczne, ale wszystkie posiadają pewne stałe elementy. Występują zarówno w postaci dyskretnej, wbudowanej w większe układy, jak i „IP-Core” w układach FPGA czy ASIC.

Opracowany w latach 80 XX wieku jest popularny do dziś pozostając prawdopodobnie najpopularniejszym mikrokontrolerem.

Page 3: Architektura mikrokontrolera X51

Architektura mikrokontrolera X51

● 8 bitowy procesor optymalizowany pod kątem sterowania● rozbudowane operacje logiczne (również bitowe)● 64 kB przestrzeni adresowej programu● 64 kB przestrzeni adresowej danych● 128 B wewnętrznej pamięci RAM● dwa 16 bitowe liczniki/zegary● dwukierunkowy UART● 6 źródeł przerwań z 5 pozycyjnym wektorem i priorytetami● wewnętrzny zegar systemowy

Page 4: Architektura mikrokontrolera X51

ArchitekturamikrokontroleraX51

Page 5: Architektura mikrokontrolera X51

Architektura mikrokontroleraMCS51

Co siedzi w środku?...

Wersje μC 8051 są nieprawdopodobnie liczne, ale wszystkie posiadają pewne stałe elementy. Występują zarówno w postaci dyskretnej, wbudowanej w większe układy, jak i „IP-Core” w układach FPGA czy ASIC.

Opracowany w latach 80 XX wieku jest popularny do dziś pozostając prawdopodobnie najpopularniejszym mikrokontrolerem.

Page 6: Architektura mikrokontrolera X51

ArchitekturamikrokontroleraX51(wyprowadzenia)

Page 7: Architektura mikrokontrolera X51

ArchitekturamikrokontroleraX51(jak to działa)

Page 8: Architektura mikrokontrolera X51

Architektura mikrokontrolera X51(obszary adresowe)

Pamięćprogramu

PamięćRAM

Page 9: Architektura mikrokontrolera X51

Architektura mikrokontrolera X51(połączenie pamięci zewnętrznej)

Page 10: Architektura mikrokontrolera X51

Architektura mikrokontrolera X51(połączenie pamięci zewnętrznej – zależności czasowe)

Page 11: Architektura mikrokontrolera X51

Architektura mikrokontrolera X51(SFR)

Page 12: Architektura mikrokontrolera X51

Architektura mikrokontrolera X51(SFR)

PSW – słowo stanu programu (adresowane bity)

CY AC F0 RS1 RS0 OV ­ P

● CY PSW.7 Wskaźnik przeniesienia● AC PSW.6 Wskaźnik przeniesienia pomocniczego● F0 PSW.5 Wskaźnik boolowski dla użytkownika● RS1 PSW.4  Bit wyboru banku rejestrów● RS0 PSW.3 Bit wyboru banku rejestrów● OV PSW.2 Wskaźnik nadmiaru● P PSW.0 Wskaźnik parzystości

Page 13: Architektura mikrokontrolera X51

Architektura mikrokontrolera X51(SFR)

PCON – rejestr sterowania zasilaniem

SMOD ­ ­ ­ GF1 GF0 PD IDL

● SMOD Bit zdwojonej prędkości transmisji UART● GF1 Wskaźnik boolowski ogólnego przeznaczenia● GF2 Wskaźnik boolowski ogólnego przeznaczenia● PD Przejście w stan czuwania (power down)● IDL Przejście w stan uśpienia (idle)

Page 14: Architektura mikrokontrolera X51

Architektura mikrokontrolera X51(SFR)

IE – rejestr zezwolenia na przerwania (adresowany bitowo)

EA ­ ­ ES ET1 EX1 ET0 EX0

● EA IE.7 Bit zezwolenia na przerwania● ES IE.4 Bit zezwolenia na przerwania z portu szeregowego● ET1 IE.3 Bit zezwolenia na przerwania z licznika T1● EX1 IE.2 Bit zezwolenia na przerwania z wejścia INT1● ET0 IE.1 Bit zezwolenia na przerwania z licznika T0● EX0 IE.0 Bit zezwolenia na przerwania z wejścia INT0

Page 15: Architektura mikrokontrolera X51

Architektura mikrokontrolera X51(SFR)

IE – rejestr priorytetu przerwań (adresowany bitowo)

­ ­ ­ PS PT1 PX1 PT0 PX0

● Jedynka wpisana na pozycję określonego bitu to wysoki priorytet● Przypisanie bitów ­ takie samo jak w rejestrze zezwoleń na przerwania

Page 16: Architektura mikrokontrolera X51

Architektura mikrokontrolera X51(SFR)

TCON – rejestr sterowania licznikami T0 i T1 (adresowany bitowo)

TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0

● TF1 TCON.7 Wskaźnik przepełnienia licznika T1● TR1 TCON.6 Bit sterowania licznika T1 (1=start, 0=stop)● IE1 TCON.5 Wskaźnik przerwania zewnętrznego INT1● IT1 TCON.4 Bit wyboru sposobu przerwania (1=zbocze, 0=poziom)● Pozostałe bity pełnią identyczną rolę w stosunku do licznika T0

Page 17: Architektura mikrokontrolera X51

Architektura mikrokontrolera X51(SFR)

TMOD – rejestr sterujący trybem pracy liczników T0 i T1

GATE C/T M1 M0 GATE C/T M1 M0

● GATE gdy = 1, wejście licznika jest bramkowane linią INTx● C/T gdy = 1 zlicza impulsy na wejściu Tx, gdy = 0 zlicza impulsy zegara● M1, M0 – tryb pracy zegara

Licznik T1 Licznik T0

0 0 – licznik 13 bitowy (zgodny z 8048)0 1 – licznik/układ czasowy 16 bitowy1 0 – 8 bitowy licznik/układ czasowy z automatycznym załadowaniem1 1 – TL0 i TH0 pracują jako liczniki 8 bitowe (T1 jest zatrzymany)

Page 18: Architektura mikrokontrolera X51

Architektura mikrokontrolera X51 (SFR)

SCON – rejestr sterowania trybem portu szeregowego

SM0 SM1 SM2 REN TB8 RB8 TI RI

● SM0, SM1 – tryb pracy portu szeregowego Szybkość transmisji0 0 – synchroniczny (rejestr przesuwający) Fosc/120 1 – 8 bitowy UART programowana1 0 – 9 bitowy UART Fosc/64 lub Fosc/321 1 – 9 bitowy UART programowana

● SM2 – używany do transmisji międzyprocesorowej● REN – odblokowanie odbiornika● TB8 – dziewiąty bit nadawany● RB8 – dziewiąty bit odbierany● TI, RI – wskaźnik przerwania od nadajnika i odbiornika

Page 19: Architektura mikrokontrolera X51

Architektura mikrokontrolera X51

Wektor przerwań

        CSEG;Begin:        JMP     Start;        ORG     Begin+0Bh       ; Timer 0 int. vector        JMP     TIinter;        ORG     Begin+023h      ; Serial interrupt        JMP     RsInt

Przerwanie Adres wektoraIE0 0003hTF0 000BhIE1 0013hTF1 001BhRI oraz TI 0023h

Przykładowy początek kodu programu