PORTE
Il PIC è dotato di porte d'input e d'output.
Le porte d'input permettono di inviare al PIC informazioni dall'esterno verso l'interno, per esempio
la condizione di un interruttore, o il segnale digitale di un altro circuito.
Per le porte d'output, le informazioni sono inviate dal PIC ad altri dispositivi esterni, per esempio
dal PIC al computer o dal PIC ad una centralina d'allarme etc.
Il PIC 16F84 ha 13 porte che possono essere settate come input od output, suddivise, al loro volta,
in 2 porte chiamate porta A e porta B.
La porta A ha 5 porte e la porta B 8.
All'inizio di ogni programma bisogna settare le porte di input e di output.
Per specificarlo sono utilizzate delle parole chiavi differenti da compilatore a compilatore, nel caso
del GCBASIC sono le seguenti:
Dir PortA = IN
Dir PortB = OUT
Set PortA.0 = IN
Set PortB.0 = OUT
Alcune le abbiamo già usate in precedenza ed ora le vedremo in modo più approfondito.
La porta A del PIC è composta da 5 porte ognuna settabile indistintamente l'una dall'altra, queste
porte sono associate a tanti altri piedini come si può vedere dalla tabella sottostante:
Lo stesso vbale per la porta B
Supponiamo di avere un progetto che richieda 2 porte di input e 4 di output e di scegliere le prime
porte A come input e le prime porte B output, le istruzioni da inserire nel sorgente saranno:
Set PortA.0 = IN
Set PortA.1 = IN
Set PortB.0 = OUT
Set PortB.1 = OUT
Set PortB.2 = OUT
Set PortB.3 = OUT
Come si può notare l'istruzione SET è utilizzata per settare le porte mentre la parola chiave IN od
OUT specifica la funzione (input o output).
Possiamo settare tranquillamente 2 porte A in input e le rimanenti in output come nell'esempio
seguente:
Set PortA.0 = IN
Set PortA.1 = IN
Set PortA.2 = OUT
Set PortA.3 = OUT
Per facilitare il settaggio di tutte le porte A o di tutte le porte B si possono usare le istruzioni DIR
come nell'esempio:
Dir PORTA IN
Dir PORTB OUT
Nel Micropic Trainer le porte A sono collegate agli interruttori mentre le porte B ai diodi led,
questo ci ha permesso di testare i programmi negli esercizi precedenti e in quelli successivi.
Ricapitolando, la sintassi per settare tutte le porte in input o in output in un sol colpo è:
DIR porta = IN oppure OUT
La sintassi per settare una singola porta è:
SET portaprincipale.porta = IN oppure OUT
Aggiunta il link al corso Linux Uno su Udemy.
Aggiunto il tutorial per la realizzazionedi un Arcade con materiale di riciclo.