ERRORE DI PROGRAMMAZIONE 000H Appena comprato il mio buon programmatore e la mia buona schedina (una piccard2) mi sono trovato faccia a faccia con il fatidico errore di IcProg : errore di programmazione all’indirizzo 000h. Mi sono chiesto : ma che diavolo significa e soprattutto come cavolo si fa a programmare ‘sta benedetta scheda??? Leggendomi un pò di documenti molti dei quali in spagnolo ho cercato di fare un po’ di ordine. SETTAGGIO PORTA COM Per prima cosa settiamo propriamente la porta seriale ; andate in Pannello di Controllo -> Sistema -> Gestione Periferiche -> Porte Com e cliccate sulla porta come a cui avete attaccato il programmatore e controllate che le impostazioni siano le stesse delle seguenti : SETTAGGIO ICPROG Passiamo al settaggio di IcProg (scaricate la versione 1.04a) ; per prima cosa andate in Settaggi -> Hardware e controllate che il tutto sia settato così : Programmatore : JDM Programmer Porte : dipende da dove è collegato il Programmatore I/O Delay: 10 Interfaccia: I/O Diretto ( o per Win2000/Xp API di Windows) Comunicazione : tutto bianco Poi andate in Settaggi -> Opzioni e configurate così : Conferme : spuntate quando volete la conferma di un evento Notifiche : spuntate entrambe I2C : Su questa pagina è possibile configurare le scelte che si riferiscono ai dispositivi I2C (per esempio le 24Cxx). Abilita MCLR a VCC : Quando si legge e/o si programma un dispositivo 24Cxx con un'interfaccia di tipo ludipipo, il segnale MCLR necessit a di essere posto a livello logico alto. La ragione perché MCLR ha bisogno di essere alto è mentre si usa per creare la tensione di alimentazione (VCC). Quindi se avete una wafer o simili spuntate questo casella. Abilita scrittura di pagina: Normalmente un dispositivo 24Cxx può essere programmato in 2 modi: scrittura a Byte e scrittura a Pagina. La scrittura di pagina è raccomandata perché è molto più veloce, ma purtroppo, non tutte le apparecchiature sostengono questa caratteristica. Perciò se si possiede un dispositivo che non supporta il metodo scrittura di pagina disabilitare questa funzione. Altrimenti si consiglia di lasciare abilitata questa funzione. Indirizzo fisico: Quando si legge e/o si programma un dispositivo 24Cxx occorre indirizzarlo. I pin d'entrata A0, A1, e A2 del dispositivo configurano l'indirizzamento e sono connessi normalmente a GND (i collegamenti sono fatti nello zoccolo del programmatore), in questo modo l'indirizzo hardware di default è 0.Nel caso in cui si avesse bisogno di partire con un'indirizzo fisico diverso da 0, impostare i pin d'entrata secondo i data sheet del produttore, ed impostare il valore il valore corrispondente in IC-Prog. Si consiglia di lasciare invariato tale valore. Programmazione : Impostare verifica durante la programmazione e non dopo ; in questo modo se c’è errore di programmazione verrà notificato subito e non dopo l’intera programmazione Miscellanea Abilita controllo VCC per JDM: Solitamente i programmatori JDM (o compatibili) non possono controllare la tensione VCC. Questo significa che la tensione di alimentazione è sempre attiva. Alcuni microcontrollori PIC non possono essere programmati correttamente senza che la tensione di alimenzatione venga tolta. Questa opzione abilita IC-Prog a controllare la tensione VCC sul programmatore JDM. Questa opzione comunque non garantiche un lavoro sicuro, e perciò è sperimentale e solo per utenti avanzati. Si consiglia di non usare questa opzione, perchè può causare il fallimento della programmazione di altri tipi di dispositivi. DIFFERENZE TRA VARIE SCHEDE Dopo aver configurato così Icprog se la scheda che stiamo programmando è una Piccard2 non ci sono soluzioni alternative e quindi si vedano le soluzioni proposte più in basso. Se invece si disponde di una Wafer o simili si può provare anche a programmare sotto Dos con programmi tipo il pix113b; fare l’erase con tali programmi e poi provare di nuovo con Icprog. CAUSE E SOLUZIONI POSSIBILI L’errore 000h è dovuto al fatto che il programmatore prima scrive sul pic poi verifica se quello che c’è sul pic corrisponde con ciò che c’è scritto in IcProg e se le due cose non corrispondono allora c’è un errore (cioè non riesce a scrivere); in parole povere c’è un problema di tipo elettrico cioè il segnale che può essere di erase o di write non riesce ad incidere sul supporto. Perché non riesce a scrivere ? le cause possono essere molteplici; eccole con abbozzate alcune soluzioni : 1) Avete settato un tipo di Pic diverso da quello in vostro possesso oppure avete attaccato il programmatore ad una porta COM diversa da quella specificata in IcProg Soluzione : cercate di stare più attenti !!! 2) Avete sbagliato verso di inserimento del pic o dell’eeprom sul programmatore Soluzione : devono coincidere i tagli dello zoccoletto sul programmatore dove mettete il chip e il taglio laterale del chip 3) Il cavo di collegamento seriale è danneggiato Soluzione : Per provare provate a mettere il programmatore direttamente vicino alla porta seriale del computer senza filo 4) L’alimentazione che fornisce la seriale non è sufficiente Soluzione : Se vi hanno dato un programmatore con un supporto per una batteria mettetecela; altrimenti si dovrebbe inserire una batteria saldandola sul prog ma ve lo sconsiglio visto che se vi hanno venduto un programmatore senza batteria è molto probabile che funzioni bene così. La poca alimentazione si può verificare soprattutto con computer portatili. Le istruzioni sono le seguenti per chi si volesse proprio cimentare : Bisogna tranciare la pista che va dal pin3 della porta seriale(il centale dei 5 pin) e metterci una batteria da 9 volts con il meno rivolto verso la seriale cioè attaccare il filo nero sul 3° piedino della seconda riga della porta rs232 e attaccare il filo rosso sul piedino della resistenza da 1500 ohm (3 rossi e una dorata) 5) Resistenza del circuito troppo alta Soluzione : Provare ad abbassare la resistenza del circuito (questo è rivolto a chi ha dimestichezza con i circuiti) provando a sostituire alle resistenze presenti resistenze più basse - thanks to Pitone02 6) Il Pic è bruciato Soluzione : l’unica soluzione è comprarne uno nuovo. La domanda è : come faccio a sapere se davvero il mio pic è bruciato ? Purtoppo non c’è un vero e proprio modo semplice di saperlo e visto il costo contenuto vi consiglio vivamente di comprarlo per non perdere tempo. Sperando di esservi stato utile vi saluto e saluto tutti gli amici del canale #Supersat !!! NAPSAT79 NAPS AT79@HOTM AIL.COM