Tutorials - PIC

 

PIC 10F200/202/204/206


Order of precedence for pin function 

Abbiamo visto che ogni pin ha disponibili tre diverse funzioni. Se abbiamo qualche idea di come utilizzare quella di I/O digitale, resta da chiarire come utilizzare le altre.

E in questo si celano alcune delle difficoltà di base per l' utente che affronta per la prima volta questi processori.
E queste difficoltà, delle piccole trappole poste sul percorso del principiante, derivano tutte dalla linea guida citata prima, ovvero dalla volontà del costruttore di assegnare ai default le condizioni di minimo consumo energetico.

Il foglio dati da una indicazione essenziale nella tabella 5-1

Come abbiamo visto, nonostante la semplicità dei moduli integrati, tutti i pin possono assumere differenti funzioni, di cui quella di GPIO si trova al livello di precedenza più basso.
Che cosa si intende con questo? Semplicemente che una determinata configurazione dei registri sovra scrive un' altra a precedenza inferiore. Questo può mettere in difficoltà chi voglia utilizzare un pin come semplice I/O digitale. Vediamo in dettaglio.

Pin Possibilità
GP0 La funzione di ingresso positivo del comparatore, applicata se il comparatore è abilitato, sovrascrive una eventuale assegnazione come uscita effettuata con il bit TRISGPIO,0.
Per disporre del pin come GPIO occorre disabilitare il comparatore.
GP1 Situazione analoga a GP0.
GP2 E' il pin più "complicato". Innanzitutto va detto che:

qualsiasi scelta tra le possibili è annullata dall' aver abilitato l' uscita FOSC/4 in OSCCAL.

Solo se il bit 0 di OSCCAL è a 0, sono possibili le altre opzioni:
  • Se è abilitato il comparatore, il pin è comunque l' uscita COUT
  • Se il comparatore è disabilitato, T0CS = 1 rende il pin come ingresso T0CKI
  • Per avere il pin sotto controllo di TRISGPIO,2 occorre che le condizioni precedenti siano disabilitate
GP3 Diventa automaticamente ingresso digitale se è stato impostato _MCLRE_OFF nel CONFIG

Quindi:

  In sintesi, per usare i pin come semplici GPIO occorre:
 
Pin Azione Dove SFR Bit
GP0 disabilitare il comparatore da programma COMCON0 b'11110001'
GP1
GP2  disabilitare il comparatore
disabilitare FOSC4 OSCCAL FOSC4, bit 0 = 0
disabilitare T0CS OPTION T0CS, bit 5 = 0
GP3 disabilitare MCLR da CONFIG config_word _MCLRE_OFF

 

 

Osserviamo che sono stati citati altri registri di controllo, oltre ai già considerati TRIS e GPIO: vediamo a cosa servono.


 

Copyright © afg. Tutti i diritti riservati.
Aggiornato il 30/04/13.