Architettura


PIC = Peripheral Interface Controller (Controllore di periferiche programmabile)
Il PIC16F877 ha 8k di flash memory (area programma), 368 byte di ram e 256 byte di e2prom. Tutte le istruzioni, ad eccezione di quelle di salto, che ne utilizzano 2, utilizzano 1 ciclo macchina che corrisponde a 4 periodi di clock. Il PIC16F877 può lavorare con un clock compreso da 0 a 20 Mhz, può avere fino a 14 sorgenti diverse di interrupt (da periferiche interne e/o esterne) ed è possibile annidare fino ad 8 chiamate a subroutine in quanto lo Stack ha una profondità pari a 8.
Ha un architettura RISC che significa : Reduced Instruction Set Computing, cioè elaborazione con insieme di istruzioni ridotto.
Le istruzioni sono quindi solo poche decine, sono eseguite molto velocemente e non serve un clock molto elevato per un efficiente funzionamento ( dai 4-8 MHz per i tipi più semplici, fino a 33-50 MHz per i tipi più evoluti)
Supporta la ICSP : In Serial Circuit Programmino cioè la possibilità di programmarlo senza togliere il chip dalla scheda, con un apposito cavetto.

Elenco delle periferiche contenute nel PIC16F877
In caso di comunicazione parallela il Portd serve per portare fuori dal uC il data bus e i 3 bit di Porte assumono il significato di cs/, wr/ e rd/. In questo modo è possibile connettere i uC ad altri dispositivi o ad altri uC.

Dando il reset al microcontrollore (uC) il Program Counter (PC) si resetta per cui il programma riparte dalla locazione 0000h (Reset Vector)

Di seguito un ottimo .pdf con l'architettura del PIC16F877


Stampa la pagina