Elettronica - Componenti
 
  Box
Leggere il datasheet di un microcontroller

Vedere anche:

Le informazioni contenute in questi appunti sono tratte dai datasheet dei componenti citati e fornite a titolo di esempio, per un uso a livello didattico, sperimentale e hobbystico dei componenti elettronici.

Un microcontroller è un circuito integrato programmabile molto complesso, nel cui interno sono contenuti circuiti con funzioni logiche ed analogiche. Non è pensabile fare un progetto con questo componente senza conoscere dettagliatamente le capacità e caratteristiche dello stesso.
Bisognerà, quindi, mettere "il naso" nel datasheet del componente specifico che abbiamo scelto per il nostro progetto e trovare le informazioni che ci servono.
Di seguito, proveremo a leggere e capire i dati e le informazioni contenute nel datasheet del microcontroller PIC16F887, costruito da Microchip.
Questo microcontroller può essere il sostituto, con caratteristiche migliori, del PIC16F877A.
Possedendo molte caratteristiche e periferiche può, quindi, essere preso come base di studio anche per altri modelli di PIC perchè, le informazioni trovate, potranno essere simili, o addirittura uguali, a quelle contenute nei datasheet di altri modelli.

Strutturazione del datasheet del PIC16F887 (e simili)

Nella figura a lato, possiamo vedere la prima pagina (copertina) del datasheet.

(1) Notiamo il nome e marchio del costruttore: (Microchip).

(2) Il nome del componente: PIC16F882/883/884/886/887
(in questo caso il datasheet contempla più modelli con poche differenze nelle caratteristiche.

(3) La funzione svolta dal componente.

In basso, nella parte destra, c'è il numero di codice dato al documento. La lettera finale, progressiva (in questo caso, la F), indica la revisione del documento (aggiornamenti rispetto la precedente versione del datasheet).
Si può intuire, quindi, che un documento con il numero DS41291E sarà meno recente di questo e più aggiornato rispetto al DS41291D.
I documenti più recenti si possono scaricare dal sito del produttore Microchip cercando la voce "datasheet".

 

Nella pagina 1 troviamo elencate tutte le caratteristiche del componente.

Tra le altre, possiamo notare:

  • Solo 35 istruzioni di linguaggio macchina
  • Velocità di funzionamento (0 ÷ 20MHz)
  • Oscillatore interno (31kHz ÷ 8MHz)
  • Alimentazione (2.0V ÷ 5.5V)
  • Possibilità di lettura/scrittura nella memoria programma durante il funzionamento
  • In-Circuit Debugger
  • Basso consumo (220µA a 4 MHz, 2.0V, tipico)
  • Riferimento di tensione interno (0.6V)
  • PWM a 10-bit, max. frequenza 20 kHz, fino a 4 canali

Tutte le caratteristiche saranno spiegate in dettaglio nei capitoli specifici contenuti nel datasheet.

Prima del numero pagina, troviamo sempre il numero di codice del documento.

Di seguito, troviamo una tabella che elenca le differenze tra i vari modelli descritti nel datasheet.

Notiamo che le differenze principali sono nella dimensione della memoria programma/dati e negli I/O disponibili.

Le differenze specifiche le potremo trovare leggendo nei vari capitoli del datasheet.

   

Nelle pagine successive troveremo il disegno delle piedinature per i vari modelli.

Dal momento che la nostra scelta è caduta sul modello PIC16F887, ci fermiamo alla pagina dove c'è la piedinatura a 40 pin PDIP, che è quella che ci interessa.

Notiamo che, ad ogni pin (piedino), è stata attribuita una etichetta (o nome) per indicare la funzione svolta.
Alcuni pin sono plurifunzione, nel senso che possono essere, alternativamente, collegati (dal programma) alle periferiche interne per dialogare con l'esterno.
Ogni funzione svolta viene indicata nell'etichetta ed è separata dalle altre con un segno "/".

Prendiamo, come esempio, il pin 33 con l'etichetta RB0/AN12/INT.

Questa etichetta indica che il pin 33, se usato come ingresso/uscita digitale (I/O) è collegato al bit 0 (RB0) di PORTB, se usato come ingresso analogico (AN12) è collegato al canale 12 del modulo ADC, oppure può venire usato per generare un interrupt (INT) sul cambio di stato di RB0.

 

 

Nella pagina successiva troviamo la tabella 3 con evidenziate tutte le funzioni svolte da ogni piedino.

Anche qui possiamo vedere il piedino 33, visto prima, con le varie possibilità di funzionamento.

Nella colonna a destra (Basic) sono specificate le funzioni di base di alcuni piedini, assegnate dal costruttore (pin per la programmazione, per il reset, per l'oscillatore esterno, per l'alimentazione, ecc.).

Arriviamo alla pagina con il sommario dei vari capitoli contenuti nel datasheet.

Ogni capitolo spiegherà, in dettaglio, l'organizzazione interna del microcontroller, il funzionamento delle varie periferiche e I/O, le modalità per programmarle, il set delle istruzioni, ecc.

Ma, prima di tutto, vogliamo andare a vedere le caratteristiche elettriche del componente e le possiamo trovare al capitolo 17 e seguenti.

Caratteristiche elettriche

E qui troviamo i valori massimi assoluti da non superare mai.

In questa figura possiamo vedere che nel campo di tensione di alimentazione 2.0V ÷ 5.5V la frequenza di funzionamento massima è di 8MHz.

Per una frequenza di 20MHz bisogna usare una tensione di alimentazione nel campo 4.5V ÷ 5.5V.

Proseguendo troviamo altre tabelle.

Qui possiamo vedere l'assorbimento di corrente a seconda della frequenza di funzionamento e della tensione di alimentazione.

Qui vediamo, tra le altre, le informazioni di durata, temporizzazione, ecc. sulle memorie Eeprom e Flash.

Qui vediamo, evidenziate, le specifiche termiche che riguardano il nostro package (contenitore).

Qui vediamo le caratteristiche e tempi dell'oscillatore ed, evidenziate come esempio, la minima e massima frequenza permessa in modalità HS.

Nelle appendici troviamo la storia delle revisioni del documento e le differenze da tenere conto per un'eventuele trasformazione di progetti fatti con il PIC16F87x verso i modelli PIC16F88x.

Per finire, nella figura seguente, vediamo la decodifica per capire la sigla stampata sui vari modelli di componente.

   

 

Cosa sono i datasheet o fogli dati

Architettura interna e memoria del PIC16F887

Bibliografia:
Datasheet Microchip PIC16F887

 

Ultima modifica  

 
Privacy Policy Cookie Policy