051 Seznámení s mikropočítačem Architektura mikropočítače Instrukce Paměť Čítače Porovnání s AT89C2051
Seznámení s mikropočítačem řady 8051 Mikroprocesor řady 8051 pochází z roku 1980 a je vytvořené firmou Intel. I přes svůj velký věk je v dnešní době velmi oblíbeným mikropočítačem a na jádře 8051 staví své mikropočítače řada firem, jako například Philips, Siemens a další. Jádro 8051 je rozšiřitelné o řadu periferii, jako jsou AD převodníky, různé typy pamětí, seriová sběrnice a další. Nabízený kmitočet je 12 až 33 MHz
Seznámení s mikropočítačem INTEL 8051 Jednočipový 8 bitový počtač Smíšená harwardská a Von Neumanova architektura Oddělená datová a programová paměť Formát instrukcí a dat je totožný a přenášen po stejné sběrnici Napájení 5V Paměť ROM, nebo EPROM 4KB pro program a RAM 128bytů pro data Možnost správy externí programové, či datové paměti CPU je tvořeno ALJ obsahuje sčítačku/odečítačku, násobičku/děličku, booleovskou ALJ ACC aritmetický posuvný registr PSW 7 bitové stavové slovo mikroprocesoru B jednobitový registr užívaný pro násobení, nebo dělení
Blokové schéma mikropočítače 8051
Instrukční sada 8051 Instrukce přesunu MOV přesune obsah zdrojového byte do cílového byte, bez ovlivnění zdroje MOVC přesune byte z programové paměti do střadače (A) MOVX přesun dat mezi střadačem a vnější pamětí dat PUSH Instrukce přičte jedničku k ukazateli zásobníku a potom uloží obsah adresovaného místa do vrcholu zásobníku. POP opak k PUSH XCH vymění obsah střadače a registru (paměťového místa) XCHD to samé ale pouze nižší půlbyte (místo v paměti musí být nepřímo adresováno) Aritmetické instrukce INC zvětší honotu registru o 1 DECC zmenší hodnotu registru o 1 ADD součet dvou registrů ADDC součet dvou registrů s přenosem DA dekadická korekce SUBB odčítání MUL násobení DIV dělení
Instrukční sada 8051 Logické instrukce ANL logický součin ORL logický součet ORL exclusive OR CLR smaže registr CPL neguje registr Bitové instrukce CLR nuluje bit SETB nastaví bit CPL neguje bit Instrukce posunu RL rotace vlevo RR rotace vpravo RLC rotace vlevo s posunem RRC rotace vpravo s posunem
Instrukční sada 8051 Skokové instrukce CALL volání rutiny ACALL absolutní volání rutiny LCALL dlouhé volání rutiny RET návrat z rutiny RETI návrat přerušení JMP skok AJMP absolutní skok SJMP krátký skok JZ je-li střadač nulový, skočí JNZ není-li střadač nulový, skočí JC je-li nastaven přenos, skočí JB je-li nastaven bit, skočí JNB není-li nastaven bit, skočí JNC není-li nastaven přenos, skočí CJNE nejsou-li si registry rovny, pak skočí DJNZ zmenší argument o jednu a není li nulový, skočí Ostatní instrukce NOP prázdný příkaz - hodí se například při zpoždění Podrobný přehled intrukcí včetně taktů potřebných k provedení viz papír č.1
Paměť mikropočítače - Rozdělení vnitřní paměti RAM procesoru 8051
Paměť mikropočítače - Rozdělení vnitřní paměti RAM procesoru 8051 A - Střadač je základní registr aritmetickologické jednotky, který vždy obsahuje jeden operand aritmetické nebo logické operace a do něhož se ukládá výsledek této operace. B - Registr Jeden operand, užívaný pro instrukce násobení a dělení PSW - Stavové slovo mikroprocesoru se skládá ze 7 bitů PSW - Stavové slovo mikroprocesoru se skládá ze 7 bitů AC Vnitřní přenos Nastaven, dojde li k přenosu mezi čtvrtým a pátým bitem střadače F0 Uživatelský příznak RS1, RS0 - Určují banku, jejíž registry R0 až R7 budou používány OV - Příznak přetečení indikuje, že došlo k přetečení při aritmetické operaci PSW P - Příznak parity indikuje lichou paritu střadače. SP - Ukazatel zásobníku má 8 bitů DPL, DPH - Registry DPL a DPH tvoří nižší a vyšší 8 bitovou slabiku 16-bitového ukazatele DPTR, který slouží k nepřímému adresování vnější datové paměti PC - Čítač instrukcí 16 bitový čítač instrukcí, není přímo programově přístupný
Čítače mikropočítače 8051 obsahjuje dva 16 bitové čítače Obsa čítačů je dostupný v registrech TH0, TL0 a TH1 a TL1 Hodinový signál může být odvozen z interního krystalu (časovač), nebo z externího hodinového impulzu připojeného na pomocí vstupu T0 a T1 (čítač) Registr TMOD určuje jednu ze čtyř konfigurací čítače GATE Řídí hradlování. C/T Rozhoduje o zdroji hodinových impulzů pro čítač/časovač. M0, M1 Těmito bity je volen jeden ze čtyř následujících režimů
Čítače mikropočítače MOD0 Pracuje jako osmibitový čítač (THn), jehož vstup je předělen (nastaveni spodními bity TLn), pětibitovým čítačem. Při přetečení nastavují příznakový bit v registru TCON
Čítače mikropočítače MOD1 Pracuje jako mód 0, ovšem s tím rozdílem, že oba čítače jsou 16bitové
Čítače mikropočítače MOD2 Umožňuje využívat tzv. hardwarové přednastavení čítače. To znamená, že když si například uložíme do registru THn hodnotu 7F, pak pak po přetečení hodnoty v registru TLn, se tento registr nastaví také na 7F (tedy hodnotu THn)
Čítače mikropočítače MOD3 v módu 3 je čítač/časovač0 rozdělen na dva samostatné 8-bitové čítače TH0 a TL0. Čítač TL0 využívá standardní signály C/T, GATE, TR0, INT0 a TF0. Čítač TH0 pracuje ve funkci časovače a je ovládán pouze řídícím bitem TR1. Při přetečení nastavuje příznak TF1. Pracuje-li čítač/časovač0 v módu 3, potom čítač/časovač1 může pouze generovat přenosovou rychlost pro sériový kanál nebo může být použit v případě, kdy nebudeme využívat přerušení.
Srovnání Intel 8051 s Atmel AT89C2051 Intel 8051 Atmel AT89C2051 Klady Rozšířenost Ověřené jádro Mnoho variací Poměrně jednoduchá architektura Zápory Větší cena Pouzdro o velikosti 40 pinů Klady Nižší cena Menší pouzdro velikost 20 pinů Analogový komparátor Zápory Menší paměť 2KB Nelze připojit vnější paměť Paměť typu LFASH
Srovnání Intel 8051 s Atmel AT89C2051 Oba mikropočítače patří do rodiny MCS51. Rovněž by bylo možné prov0st srovnání s některým z mikropočítačů firmy PIC. Ovšem dle mých zkušeností je to jak srovnávat notebooky stejné řady. Každý má své proti i pro. Někomu vyhovuje více nožiček, někomu menší pouzdro apod. Osobně však mám větší vztah k Intelu 8051, neboť jsem s ním strávil řadu let.
Zdroje: Skripta Ing. Ladislava Škapy http://noel.feld.cvut.cz/vyu/scs/prezentace99/8051/ http://root.cz http://wikipedia.org/ Velký bratr google Tištěné materiály pocházejí ze skript P. ladislava Škapy