Intel 8051: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
Riga 26:
Le porte seriali dell'8051 rendevano semplice l'uso del chip come interfaccia di comunicazione. Era 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 che asincrono. Il chip era in grado di comunicare secondo i protocolli seriali più diffusi, in particolare era supportata anche una modalità compatibile con il protocollo [[EIA-485|RS-485]] per comunicazioni multipunto. Questa capacità di interfacciamento verso altri dispositivi rendeva l'8051 particolarmente adatto per applicazioni di tipo embedded.
Una volta che una UART, e un temporizzatore se necessario, è stata configurata, il programmatore deve solo scrivere una semplice routine di interrupt per riempire il registro shifter di ''invio'' ogni volta l'ultimo bit shiftato è inviato tramite la UART e/o riempie lo ''spazio vuoto'' nel registro shifte del ''destinatario''. Il programma principale allora effettua letture e scritture seriali semplicemente leggendo e scrivendo dati a 8-bit sugli stacks.
I microcontrollori 8051 includono tipicamente uno o due UARTs, due o tre temporizzatori, 128 o 256 bytes di RAM interna (16 byte indirizzabili), fino a 128 bytes di I/O, da 512 bytes a 64 kB di memoria programmi interna, a volte, un quantitativo di RAM estesa (ERAM - Extended RAM) situato nella memoria esterna. L'originale core 8051 gira a 12 cicli di clock per ciclo macchina, eseguendo la maggior parte delle istruzioni in uno o due cicli macchina. Con una frequenza clock di 12 Mhz, l'8051 potrebbe quindi eseguire un milione istruzioni (che richiedono 1 ciclo macchina) per secondo o 500,000 istruzioni (che richiedono 2 cicli macchina) per secondo. Il rinnovato 8051 è comunemente utilizzato, il quale gira a sei, quattro, due, o addirittura un clock per ciclo macchina, e ha una frequenza di clock di 100Mhz, ed è quindi in grado anche di eseguire un maggior numero di istruzioni al secondo. Tutti i SILabs, alcuni Dallas e pochi Atmel sono provvisti di un singolo ciclo macchina per core.
Velocità ancora più elevata negli 8051 a singolo ciclo macchina, la gamma da 130Mhz a 150Mhz, sono ora disponibili su internet in forma scaricabile per la programmazione logica di dispositivi quali FPGA, e per centinaia di Mhz in ASTCs, per sempio, la netlist da www.e8051.com. la velocità massima di clock degli 8051 raggiunge più di 200Mhz grazie alla tecnologia FPGA odierna - per esempio www.dcd.pl
Caratteistiche cumuni inclusi nei moderni microcontrollori basati sull'8051 comprendono reset timers integrati con brown-out detection, oscillatori on-chip, Flash rom auto-programmabile, codice di avvio nella ROM (bootloader), EEPROM non-volatile, I²C, SPI, host interfaccia usb, generatori PWM, extra contatori e temporizzatori, utility di debugging in-circuit, altri interrupt sources, e extra power saving modes.
== Programmazione ==
| |||