Intel 8051
Intel 8051 je mikrokontroler sa harvardskom arhitekturom koju je 1980. godine razvio Intel. Dizajn mikrokontrolera 8051 je Intelov, ali se danas on može naći u katalozima mnogih proizvođača. Susreće se u mnogim aplikacijama poput uređaja u domaćinstvu i industriji, automobilima, robotima, automatima i mnogim drugim uređajima koji zahtjevaju programsko upravljanje.
Osnovne karakteristike dizajna
[уреди | уреди извор]Intel 8051 je osmobitni mikrokontroler sa integrisanom programskom memorijom i memorijom podataka. Sadrži dva šesnaestobitna brojača, serijski port, ulazno/izlazne paralelne portove i oscilator.
Pinovi 8051
[уреди | уреди извор]- Pinovi za napajanje VSS i VDD
- Pinovi za oscilator XTL1 i XTL2
- U/I portovi P0, P1, P2 i P3, svaki sa po osam bita
- Reset pin RST
- Kontrolni pinovi \PSEN, \EA i ALE
Port P3 može da se koristi ili kao skup U/I pinova ili kao skup pinova posebne namjene. 8051 ima integrisani oscilator koji ima dva izvedena pina. Prva mogućnost je priključenje kristala na pinove, dok je druga dovođenje takta od nekog eksternog izvora.
Aktivan nivo RST (reset) pina je visoki nivo. Proverava se u intervalima od jednog mašinska ciklusa. Potrebno je da stanje RST pina bude dva puta uzastopno na visokom nivou kako bi se to shvatilo kao reset.
Arhitektura
[уреди | уреди извор]Još jedna veoma bitna osobina 8051 je da su svi procesi u njemu sinhroni sa signalom takta. Mašinski ciklus ima period od 12 taktova. Mašinski ciklus je poravnat sa silaznom ivicom takta. Sastoji se od šest faza. Svaka faza ima dve podfaze. Podfaza odgovara jednom taktu.
Memorija
[уреди | уреди извор]8051 ima 4KB integrisane ROM memorije. Postoje i drugi mikrokontroleri iz ove familije koji imaju i veći kapacitet, kao i oni koji imaju EPROM ili FLASH. Predviđen je i eksterni adresni prostor od 64 KB eksterne programske memorije za proširenje. Osnovna verzija 8051 ima 128 B interne RAM. Najnižih 32 B podijeljena su u četiri banke registara sa po 8 registara. Narednih 16 bajtova je bit adresibilna memorija. Ostatak memorije je bajt adresibilna memorija opšte namene.
Portovi
[уреди | уреди извор]Port 0 se može koristiti:
- kao U/I port
- kao dio adresne magistrale i magistrala podataka
Za razliku od ostalih port 0 u U/I režimu radi kao open drain.
Port 1 se koristi kao U/I port
Port 2 se može koristi:
- kao U/I port
- kao viši bajt adresne magistrale
Port 3 se može koristi:
- kao U/I port
- kao niz signala posebne namjene
Registarske banke
[уреди | уреди извор]8051 ima četiri registarske banke, svaka ima po 8 B. Počinju od adrese 0. Svaka banka se posmatra kao skup registara R0 do R7. U određenom trenutku koristi se tačno jedna banka. Koriste se kod često pozivanih procedura koje koriste te registre, kako bi se izbeglo manipulisanje stekom.
Registri posebne namene
[уреди | уреди извор]Registri posebne namene koriste se za pristup periferijama. Mapirani su u memorijski prostor odmah iza RAM-a. Zauzimaju narednih 128 B. Neki su i bit adresibilni. Pristupa im se direktno.
Registri posebne namene u 8051 su:
- PSW - Programska statusna reč
- Acc i B - akumulator i pomoćni registar B
- SP - Pokazivač vrha steka
- P0, P1, P2 i P3 - prihvatni registri paralelnih portova
- DPH i DPL
- TCON, TMOD, TL0, TL1, TH0 i TH1
- SCON, SBUF i PCON
- IE i IP
Programska statusna reč ima sledeće bitove:
- Bit 7 - CY - prenos
- Bit 6 - AC - pomoćni prenos
- Bit 5 - F0 - fleg 0
- Bit 4 i 3 - RS1 i RS0 - selekcija reg. banke
- Bit 2 - OV - prekoračenje
- Bit 0 - P - bit parnosti
Reference
[уреди | уреди извор]
Intel mikroprocesori |
---|
4004 | 4040 | 8008 | 8051 | 8080 | 8085 | 8086 | 8088 | iAPX-432 | 80186 | 80188 | 80286 | 80386 | 80486 | i860 | i960 | Pentium | Pentium Pro | Pentium II | Celeron | Pentium III | X-Scale | Pentium IV | Pentium M | Pentium D | Pentium Extreme Edition | Xeon | Core | Core 2 | Itanium | Itanium 2 |