PICmicro. PICMICRO basic

9. Il registro di stato (STATUS REGISTER) : Banco 0 (03h); 1 (83h); 2(103h); 3 (183h)

Registro di status

Incominciamo la trattazione dei vari SFR (vedi paragrafo 08) con il registro che contiene tutte le informazioni relative alla unità che esegue le operazioni (ALU = Arithmetic Logic Unit), che contiene i bit per il cambio del banco di memoria (p. cit.) e lo stato di reset del dispositivo, ed è comune a tutti i banchi di memoria.

E' un registro ad 8 bit ecco il significato di ogni bit partendo da quello più significativo (bit 7) fino a quello meno significativo (bit 0).

ATTENZIONE! La scrittura su questo registro potrebbe non restituire il risultato pensato, in quanto 2 bit sono a sola lettura e gli ultimi 3 bit rispecchiano comunque lo stato dell'ALU a prescindere da quello che viene ivi scritto!

10. Il registro delle opzioni (OPTION REGISTER) : Banco 1 (81h); 3 (181h)

Registro opzioni

Un altro registo molto importante è quello che tratta del prescaler/postscaler del Timer0 (che è condiviso con il watchdog), del Timer0 stesso dell'interrupt esterno e dei pull-up. Ecco nella seguente tabella il significato dei bit, che, in questo caso sono tutti leggibili e scrivibili.

Tabella opzioni

11. Gli interrupt

Che cosa sono gli interrupt? L'interrupt non è altro che un segnale elettrico (esterno od interno al dispositivo) che permette di interrompere (appunto) la normale esecuzione del programma per eseguirne un altro parallelo, ed alla fine di questo, riprendere con il programma principale dal punto in cui era stato abbandonato.

Gli interrupt vengono spesso usati ove è necessario dare priorità di intervento ad un segnale specifico, oppure attendere l'esecuzione di una procedura più lenta di quella principale e sono implementati nell'hardware del PIC e possono essere attivati/disattivati a seconda delle esigenze.

12. Il registro di controllo degli interrupt (INTCON) : Banco 0 (0Bh); 1 (8Bh); 2(10Bh); 3 (18Bh)

Registro controllo interrupt

Questo registro è presente su tutti i banchi di memoria (vedi paragrafo 07).

Ecco il significato di tutti i bit:

Tabella INTCON

13. Attivazione interrupts periferiche (PIE1) : Banco 1 (8Ch)

Registro PIE1

Questo registro attiva le periferiche singole attivate tramite il bit 6 di INTCON (vedi paragrafo 12).

Tabella PIE1

14. Flags per identificazione della periferica che ha causato l'interrupt (PIR1) : Banco 0 (0Ch)

Questo registro conserva i flag delle periferiche che hanno causato un interrupt, fra quelle elencate nel registro precedente PIE1 (vedi paragrafo precedente).

Registro PIR1

ATTENZIONE! E' importante notare che il flag viene settato lo stesso a prescindere dalla condizione del bit corrispondente, naturalmente, in caso di interrupt disattivato non verrà generato il relativo interrupt.

Tabella PIR1

15. Interrupt della scrittura su EEPROM dati (PIE2) : Banco 1 (8Dh)

Registro PIE2
Questo registro è, in pratica, costituito da un solo bit che attiva/disattiva l'interrupt di fine scrittura della EEPROM.

Tabella PIE2

Scarica subito una copia gratis

Scrivi un commento

Seguici anche sul tuo Social Network preferito!

Send this to a friend