Tutorials - PIC18 by Data Sheet

 

I port


I port

Con il termine PORT si definisce un pin del chip a cui sono collegate delle funzioni digitali o analogiche.

E' caratteristica comune dei microcontroller embedded quella di avere più di una funzione assegnabile ad ogni pin.

Dall' immagine a lato si rileva che, esclusi i pin dedicati all' alimentazione (Vdd/Vss), tutti gli altri supportano da due a quattro diverse periferiche. 

Questo, a prima vista può apparire molto complicato ed è uno dei punti su cui trova maggiore difficoltà chi si avvicina le prime volte a questi microntroller. ma non è così. Infatti basta considerare le varie funzioni  esclusivamente una alla volta, senza soffermarsi su quelle che non interessano l' applicazione.

In sostanza, questa abbondanza di funzioni corrisponde ad una serie di POSSIBILITA', di potenzialità che sono disponibili e che possono essere usate dove e quando servono. Altrimenti resta lì in attesa. Con un esempio, è come avere disponibile un coltellino svizzero multiuso: ben complicato, con molte e molte lame e funzioni, ma di tutte se ne useranno in generale poche per volta.

Quindi non c'è assolutamente da preoccuparsi per questa selva di funzioni, nè tanto meno per le centinaia di pagine dei fogli dati: è ben possibile che si impieghi un PIC da anni senza aver mai avuto occasione di utilizzare la PSP o l' USART in trasmissione sincrona o I2C in modo slave.

Comunque, la funzione principale e più semplice è quella di IO digitale o GPIO (General Purpose IO).

Poichè il micro lavora su dati dell' ampiezza di 8 bit, logicamente ne consegue che anche  i pin siano raggruppati in blocchi di 8

Questa struttura viene identificata con lettere maiuscole, formando:

  • PORTA

  • PORTB

  • PORTC

  • PORTD

  • PORTE

  • ecc.

a seconda della disponibilità di pin del processore (i PIC18 hanno packages che variano tra 18 e 100 pin).

In generale, i package a 28 pin dispongono delle prime 3; package a 40 pin hanno il PORTD e package con un numero maggiore di pin dispongono di più GPIO.

Il raggruppamento logico dei GPIO in moduli di 8 corrisponde all' interno del chip ad una serie di blocchi che controllano ciascuno 8 pin attraverso una serie di registri.

Qui sopra è riportato lo schema di principio del PIC18F2321 e sono evidenziati i blocchi dei PORT.
Possiamo osservare che, per questo chip in contenitore a 28 pin, sono disponibili i PORTA, B, C e un solo elemento del PORTE.
Nel PIC18F4321 troviamo anche il PORTD e un numero maggiore di bit del PORTE.

A parte queste differenze, si constata (positivamente!) che Microchip ha fatto il possibile per mantenere una compatibilità a livello di pin e di funzioni tra i vari chip, non solo di una stessa famiglia, ma anche di famiglie diverse.

Così, troviamo una completa compatibilità pin-to-pin tra un PIC16 e un PIC18, a pari package.

sia a livello pin di alimentazione, sia di gruppi di porte e anche a livello di funzioni, con la sola accortezza di tenere presente che i PIC18 hanno, in generale, più periferiche integrate dei PIC16 e quindi le funzioni programmabili sui pin sono maggiori.

Per ogni PORT, a supporto della funzione di IO digitale, nei PIC enhanced sono disponibili 3 registri:

TRISx che determina la direzione ingresso uscita di ogni pin
PORTx che permette l' accesso ai pin in lettura/scrittura
LATx che permette la lettura e la scrittura del registro latch di uscita

Questa struttura triplice, rispetto a quella composta dai soli PORTx e TRISx dei mid-range, garantisce l' eliminazione del Problema R-M-W che affligge questi ultimi.

Una trattazione dettagliata del Problema R-M-W è disponibile qui.


Inoltre, una trattazione dettagliata della struttura generale hardware dei PORT la trovate in queste pagine.

Nelle prossime pagine seguiamo il foglio dati nell' analisi dei singoli PORT.


 

 

Copyright © afg. Tutti i diritti riservati.
Aggiornato il 09/12/10.