Intel 8051: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Recupero di 1 fonte/i e segnalazione di 0 link interrotto/i.) #IABot (v2.0 |
fix incipit |
||
| (5 versioni intermedie di 4 utenti non mostrate) | |||
Riga 1:
[[File:KL Intel P8051.jpg
[[File:SAB-C515-LN.jpg|thumb|Microcontrollore SAB-C515-LN di Infineon, basato sul core 8051.]]
L{{'}}'''Intel 8051''' è un [[microcontrollore]] a 8 [[bit]] su singolo chip basato su [[architettura Harvard]], prodotto da [[Intel]]
La differenza tra una vera e propria CPU e l'8051 è che quest'ultimo possiede 32 linee di I/O, organizzate in gruppi di 8 bit ciascuno. ad ognuno di questi è possibile collegare un pulsante, un LED, oppure altri dispositivi che possano fornire I/O all'8051.
La designazione ufficiale di Intel per la famiglia 8051 di microcontrollori è '''MCS 51'''. La prima versione fu prodotta utilizzando tecnologia [[Logica NMOS|NMOS]] mentre le versioni successive, identificate da una lettera C nel loro nome (es., 80C51) usavano tecnologia [[CMOS]] ed erano quindi più efficienti dal punto di vista energetico dei loro predecessori NMOS. Ciò li rendeva particolarmente adatti per l'uso su dispositivi a [[Batteria (chimica)|batteria]].
== Architettura 8051 ==
L'8051 possiede 60000 transistor. Il cuore dell'8051 è rappresentato dal bus principale cui sono collegati vari registri, quasi tutti destinati a lettura o scrittura, sotto il controllo del programma.
L'8051 è dotato di due memorie separate per codice e dati. La RAM dei dati è di soli
L'8051 è un processore sincrono in cui la maggior parte delle istruzioni, seppur non tutte, impiegano un solo ciclo macchina. Ogni ciclo macchina è suddiviso in dodici cicli di clock, e da sei stati. Ad ogni stato viene eseguita una precisa operazione che portano all'esecuzione dell'istruzione.
== Applicazioni e funzioni importanti ==
[[File:Intel 8051 arch.svg
Il chip dell'8051 integra le funzionalità seguenti:
* [[Central processing unit|CPU]] a 8 bit
Riga 20 ⟶ 22:
* [[Bus (informatica)#Bus dati|bus dati]] a 8 bit
* [[Bus (informatica)#Bus indirizzi|Bus indirizzi]] a 16 bit (spazio indirizzabile complessivo: 2<sup>16</sup> = 64[[kilobyte|kB]] indipendenti su RAM e ROM)
* RAM interna (memoria dati) -
* ROM interna (memoria programma) - 4kB
* Quattro porte di I/O orientate al byte
* [[UART]] (porte seriali) di tipo sincrono (SPI, ''Serial Peripheral Interface'') e asincrono
* Due contatori/[[timer (informatica)|timer]] a 16 bit
* Gestore di ''[[interrupt]]'' a due livelli di priorità
* Controllo del consumo (modalità di risparmio energetico)
Una caratteristica particolarmente utile dell'8051 è la possibilità di elaborare direttamente e in modo efficiente [[Variabile booleana|variabili booleane]] a un solo bit, nei registri e nella RAM. Questa caratteristica ha contribuito a consolidare la popolarità dell'8051 in applicazioni di controllo industriale. Un'altra caratteristica apprezzata è la presenza di quattro gruppi separati di registri di contesto, usati per ridurre drasticamente le latenze degli ''interrupt'' rispetto ai metodi tradizionali di immagazzinamento del contesto su [[Pila (informatica)|stack]].
Le porte seriali dell'8051 rendono semplice l'uso del chip come interfaccia di comunicazione. È infatti possibile configurare la modalità di connessione tra i pin esterni e i registri a scorrimento interni, collegandoli anche ai timer interni, ottenendo così il supporto di diverse modalità di comunicazione seriale, di tipo sia sincrono (SPI) che asincrono.
Riga 656 ⟶ 658:
== Varianti ==
[[File:INTEL8031AH.png|thumb
{| class="wikitable" border="1"
Riga 713 ⟶ 715:
* {{Cita libro | cognome=Payne | nome=William |
titolo=Embedded Controller Forth for the 8051 Family |tipo=hardcover |
data=19 dicembre 1990 |
* Andrew S. Tanenbaum, Architettura degli elaboratori, un approccio strutturale, Pearson Prentice Hall
== Altri progetti ==
{{interprogetto|preposizione=sull'}}
== Collegamenti esterni ==
* {{Collegamenti esterni}}
* {{cita web|http://www.atmel.com/products/8051/|Atmel}}
* {{cita web | 1 = http://www.cast-inc.com/cores/r8051xc2/index.shtml | 2 = CAST, Inc. (8051 IP core provider) | accesso = 21 maggio 2009 | urlarchivio = https://web.archive.org/web/20090430022418/http://www.cast-inc.com/cores/r8051xc2/index.shtml | dataarchivio = 30 aprile 2009 | urlmorto = sì }}
| |||