Intel 8051

**Intel 8051** Intel etxeak sistema txertatuetan erabiltzeko 1980. urtean sortu zuen mikrokontrolagailua da. 8051 nukleoak hainbat fabrikatzaileren 100 mikrokontrolagailu baino gehiagotan erabiltzen dira. Adibidez: Atmel, Dallas Semiconductor, Philips, Winbond...

Intel etxearen esanetan, 8051 µC-ren laburdura, **MCS 51** da. 8051 µC eta MCS 51-ak familia bat osatzen dute.

## Ezaugarriak 
### Hardwarea 
Arquitecture Harvard-ean oinarrituta dago. Nahiz eta berez aplikazio sinpleetarako diseinatua izan zen, hemen 64 KB kanpo ROM eta 64 KB RAM helbideratu daitezke lerro bananduen *select* programa eta txip datuen bidez.

Mikrokontrolagailu honek barne-memoria bat du eta bi zatitan banatuta dago: SFR eta memoria unibertsala. SFRak (Special Function Registers), mikrokontrolagailuak emandako erregistroak dira eta helbideak esleituta dituzte barne-memoria honetan. Barne-memoria honetarako sarbidea, kanpo-memoriarako sarbidea baino azkarragoa da, baina tamaina mugatua da. Gainera, barne-memoria honetako zati bat, funtzio-deietan eta eten-prozesuetan zeharreko pila bezala erabiltzen da.

8051ren ezaugarri partikular bat prozesu boolearreko unitate bat sartzea da. Prozesu honek aukera ematen du logika boolearreko bit-eragiketak zuzenean barne-erregistroetan exekutatzea. Honengatik, kontrol industrialeko aplikazioetan oso ezaguna bihurtu da 8051.

Baloratutako beste ezaugarri bat da erregistroetan banatutako lau multzo dituela. Ezaugarri hau sarritan erabiltzen da etenaren itxarote-denbora murrizteko. (Etendura-kudeatzailearen errutinak beste erregistro-multzo bat darabilela adierazten du, honela, pilan dauden jatorrizko erregistroak salbatuz).

8051 gehienek barnean dituzte: bat edo bi UART, bi edo hiru tenporizadore, 128 edo 256 byte barne-RAM (16 byte horiek helbideragarriak dira bit mailan), lau edo bost sarrera-irteera erregistro eta 0 K – 54 K barne-programaren memoria (ROM). 8051 jatorrizko nukleoak 12 erloju-zikloko makina-ziklo bat exekutatzen du, agindu gehienak bat edo bi makina-ziklo eskatuz. Baina gaur egun, fabrikatzaile gehienek bertsio hobetuak eskaintzen dituzte, eta hauek makina-agindu bakoitzeko 2 edo 4 erloju-ziklo behar dituzte.

8051 mikrokontrolagailu modernoek, jatorriarekiko hobekuntza asko eskaintzen dituzte. Hobekuntza arruntenak: mikrokontrolagailua berrasieratzeko tenporizadore programagarria (*watchdog timers*), barne-oszilatzaileak, barne-programaren memoria (Flash ROM), ROMen hasieratze-kodea, barne-biltegiratzea (EEPROM), I2C, SPI, USB, PWM sorgailuak, A/D eta D/A bihurgailuak, denbora errealeko erlojua (RTC), tenporizadore eta kontagailu gehigarriak, barne-arazketak egiteko erraztasunak, eten-iturri gehiago, kontsumo baxuko moduak, CAN interfazea…

### Softwarea 
8051 mikrokontrolagailuarentzat, hainbat C lengoaia konpilatzaile daude, esate baterako, mihiztadura-lengoaia. Gehienek luzapenak gehitzen dizkiote lengoaiari, horrela, programatzaileari zehazten dio aldagaia zein memoria motatan dagoen gordeta, etendura-kudeatzaileak zeintzuk diren, erregistro-bankuak zeintzuk diren, agindu berezietara sartzeko bit-ak aldatzea…

8051ren aurrekoa, 8048a izan zen. Hau lehen IBM PC teklatuan erabili zen. Honek tekla-sakatzeak *stream* serie bihurtzen zituen, ordenagailuaren unitate zentralera bidaltzeko. 8048a eta bere deribatuak, oinarrizko teklatuetan erabiltzen dira gaur egun.

## Bertsioak 
**8031** mikrokontrolagailua jatorrizko Intel 8051ren bertsio laburtua izan zen, eta gainera, ez du barne-memoriarik.

**8052**a jatorrizko Intel 8051ren bertsio hobetua izan zen honako ezaugarriekin:

* 128 byteko barne-RAM izan beharrean, 256 byte izatea

* 4 KB barne-ROM izan beharrean, 8 KB izatea

* 16 biteko hirugarren tenporizadorea edukitzea

* Bigarren serieko ataka edukitzea

Kontrolatzaile hauek dituzten Timer-ek, seriean zein paraleloan dabiltzan komunikazio-sistemak dituzte.

## Kanpo estekak