PROGRAMMARE I PIC l'uso di ICPROG Autocostruirsi un programmatore di PIC è veramente semplice. Se poi vi limitate a programmarne solo alcuni modelli potete veramente costruire un dispositivo molto semplice. Fra i vari disponibili su internet io uso da anni il modello 'Conquest'. Programma il 16F84 e il 16F628 che sono i pic piu usati. Notate fra l'altro che è stato progettato da un radioamatore... Questo modello veniva accompagnato da un software per windows95 scritto in delphi... purtroppo già da windows98 in poi la gestione diretta delle periferiche lo ha reso inutilizzabile. Per contro si è diffuso un altro software 'ICPROG' che supporta questo stesso hardware. E' facilmente reperibile su internet e gratuito, supporta un gran numero di pic. Lo troverete in questo cdrom nella relativa cartella. Corso microprocessori PIC ARI CARPI Una volta installato occorre una semplicissima configurazione. Andate nel menù 'settings' e successivamente alla voce 'Hardware F3' Settate la finestra che comparirà esattamente come segue. La voce 'I/O Delay' và regolata con qualche tentativo. Serve fondamentalmente ad impostare le temporizzazioni necessarie al flusso seriale di dati verso il pic. Quest'ultimo d'altra parte è molto tollerante sui tempi nonostante la diffida della Microchip. Sul mio Pentium III/866 è regolato a 10, in generale andrebbe aumentato di pari passo con la frequenza del processore nel vostro pc. Provate 10­20 poi programmate un chip. Se la verifica da esito positivo siete a posto. Se saltuariamente dovesse capitarvi qualche errore di programmazione inspiegabile provate ad aumentare un poco il valore. Chiudete la finestra con Ok. I file generati dall'assemblatore della Microchip sono in formato Hex, quindi se state assemblando un file chiamato 'Pippo' poi dovrete mediante icprog cercare il file 'Pippo.hex' . Corso microprocessori PIC ARI CARPI La finestra di lavoro è la seguente: Prima di caricare un file qualunque occorre prima selezionare il tipo di pic nel menu a tendina in alto a destra, in questo screenshot vi vedete già selezionato PIC16F84A. Selezionate il modello esattamente in vostro possesso... un PIC16C84 non è la stessa cosa ! Appena sotto c'è la configurazione del chip: ● Oscillator: normalmente ci metterete XT per oscillatore a quarzo ● WDT: è il watchdog timer, letteralmente cane da guardia. Se lo selezionate ma il vostro programma non ne fa uso... non funzionerà nella poiché il pic verrà ciclicamente resettato ! ● PWRT: comanda il reset interno al pic. Nella nostra demoboard la rete di reset è stata prevista per cui va lasciato deselezionato, in altri progetti potrebbe essere necessario attivarlo. ● CP: Code protection. Serve per proteggere il codice programma dalla lettura. Lo userete se non volete che qualcuno legga il vostro software. Attenzione che non essendo possibile la rilettura di quanto appena programmato la verifica del chip darà SEMPRE risultato errato !!! Potrete comunque sempre cancellare completamente il chip. ● Checksum e IdValue... ignorateli. Corso microprocessori PIC ARI CARPI La finestre 'Program code' e 'Eeprom data' sono utilissime per vedere al volo cosa avete appena caricato da file o letto dal chip. La colonna piu a destra vi mostra il contenuto in ascii, vi renderete conto dell'utilità di questa cosa quando userete display lcd o scambi di dati via seriale. Il pulsante programma il chip presente nel programmatore con il contenuto del buffer visibile a schermo. Una volta avviato la spia rossa sul picprogrammer si accenderà... NON estraete o inserite pic mentre questa spia è accesa !!! Il pulsante vi permette di leggere il contenuto di un chip nel buffer per controllarlo o magari salvarlo in un file. Questo se ovviamente chi ha programmato il chip non aveva abilitato l'opzione 'code protection'. Se quest'ultima opzione fosse stata abilitata potete comunque cancellare completamente il pic con il pulsante e così riutilizzarlo. Corso microprocessori PIC ARI CARPI