07.06.2013 Views

Progetto di un capacimetro a microcontrollore per fotodiodi SPAD

Progetto di un capacimetro a microcontrollore per fotodiodi SPAD

Progetto di un capacimetro a microcontrollore per fotodiodi SPAD

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Programmazione me<strong>di</strong>ante bootloader<br />

CAPITOLO 3. <strong>SPAD</strong>CAPMETER<br />

Un’altra interessante caratteristica <strong>di</strong> questo <strong>microcontrollore</strong> è la possibilità <strong>di</strong><br />

programmazione con il bootloader. Esso consiste in <strong>un</strong> piccolo programma cari-<br />

cato a bordo del PIC, il quale all’accensione controlla la presenza <strong>di</strong> <strong>un</strong> segnale in<br />

ingresso. Se esso è presente avvia <strong>un</strong>a com<strong>un</strong>icazione con il PC attraverso l’inter-<br />

faccia USB. Me<strong>di</strong>ante <strong>un</strong> opport<strong>un</strong>o software è possibile inviare il programma al<br />

<strong>microcontrollore</strong> il quale provvede a scriverlo in FLASH, partendo da <strong>un</strong> in<strong>di</strong>rizzo<br />

tale da non sovrascrivere la parte <strong>di</strong> co<strong>di</strong>ce del bootloader. Ciò consente <strong>di</strong> rea-<br />

lizzare <strong>un</strong>a facile ed efficiente programmazione IN-CIRCUIT del <strong>di</strong>spositivo senza<br />

utilizzare programmatori esterni. Bisogna sottolineare la necessità <strong>di</strong> caricare la<br />

prima volta tale bootloader sul <strong>di</strong>spositivo tramite <strong>un</strong> apposito programmatore.<br />

3.4.2 Configurazione hardware<br />

Visto il f<strong>un</strong>zionamento del <strong>microcontrollore</strong> e le esigenze del sistema in progetto,<br />

serve sviluppare la circuiteria necessaria <strong>per</strong> la temporizzazione, la programma-<br />

zione IN-CIRCUIT e i collegamenti verso le altre <strong>per</strong>iferiche.<br />

Per quanto riguarda il clock, come precedentemente detto, bisogna utilizzare<br />

<strong>un</strong> quarzo da 4 MHz collegato ai pin OSC1 e OSC2. Per l’innesco delle oscillazioni,<br />

come consigliato dal datasheet, si aggi<strong>un</strong>gono due condensatori verso massa da<br />

33 pF.<br />

Il circuito regolatore <strong>di</strong> tensione <strong>per</strong> l’USB necessita <strong>di</strong> <strong>un</strong> condensatore esterno<br />

da 470 nF che viene collegato al pin VUSB.<br />

Inoltre <strong>per</strong> il caricamento del bootloader, o<strong>per</strong>azione che si esegue solo al primo<br />

utilizzo, si necessita <strong>di</strong> <strong>un</strong> connettore <strong>per</strong> il collegamento con il programmatore<br />

ICD2. Questo prevede cinque linee, due <strong>di</strong> alimentazione, <strong>un</strong>a <strong>di</strong> reset (MCLR),<br />

<strong>un</strong>a <strong>per</strong> il dato (PGD) e <strong>un</strong>a <strong>per</strong> il clock (PGC).<br />

Inoltre <strong>per</strong> il corretto f<strong>un</strong>zionamento del PIC, il pin PGM deve essere forzato a<br />

massa.<br />

Il segnale necessario <strong>per</strong> avviare la programmazione me<strong>di</strong>ante bootloader si<br />

fornisce attraverso <strong>un</strong> pulsante collegato al pin RB4, in particolare esso chiude a<br />

45

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!