Struttura interna
Anche se si tratta di argomenti che richiedono una certa conoscenza dell'
elettronica, possiamo anche dare uno sguardo ai diagrammi a blocchi della
struttura interna di questi PIC e che il foglio dati riporta.
Per quanto riguarda 12F510, la situazione è questa:
Le dimensioni in bit dei vari bus interni sono riportate su ognuno di essi.
Si ricorda che la struttura Harvard consente di avere dimensioni diverse per i
bus dati e istruzioni, dato che sono trattati separatamente.
Così, troviamo un Data Bus a 8 bit, ma un Program Bus a 12 bit. Nell'
accesso alla RAM osserviamo che i due bus concorrono contemporaneamente,
fornendo da una parte l' indirizzo della locazione a cui accedere e dall'
altra trattando il dato contenuto. Alla creazione dell' indirizzo partecipa
anche un meccanismo di indirizzamento indiretto, basato sul puntatore FSR, che
sarà descritta in seguito.
L' unità centrale logico-aritmetica (ALU) fa leva su un registro a 8 bit
che in altri processori si chiama solitamente accumulatore, mentre per
Microchip prende il nome di W o WREG (Working Register - registro di
lavoro).
Un grosso blocco contiene la logica del reset, del power on (POR), il
Watchdog (WDT) e l' oscillatore interno, mentre è accessibile una interfaccia
per un oscillatore esterno.
Ci sono tre moduli-funzione:
- TIMER0
- 8-bit ADC
- un comparatore.
Per quanto riguarda 16F506, la situazione è del tutto identica, con la
sola differenza di un maggior numero di I/O disponibili, organizzati in due
port come detto in precedenza.
Qui troviamo, come accennato, gli I/O raccolti in due port, chiamati
PORTB e PORTC.
Inoltre il comparatore è doppio e sia questo che l' ADC sono più raffinati,
disponendo di una sorgente di tensione di riferimento programmabile.
|