Discussione:
PIC 16F84A - ludipipo alimentato - icprog - errore 0000h
(troppo vecchio per rispondere)
Marco
2004-05-15 15:49:12 UTC
Permalink
Per prima cosa salve a tutti

Poiché studente di elettronica, ho deciso di cimentarmi nella
programmazione casalinga di PIC 16F84. Dopo aver reperito lo schema
elettrico di un ludipipo per PIC 16F84, ho deciso di modificarlo per
renderlo alimentato esternamente.
All'integrato arrivano perciò 5V e 12V (questi ultimi attraverso una
resistenza di 10k) da un alimentatore esterno. RB6 ed RB7 sono
collegati invece alla porta seriale secondo lo schema originale (mi
pare di OOZ Sat).
Ho quindi comprato un PIC, un 16F84A...
Come prevedibile, qualcosa non funziona. Ho provato ICProg e PICProg,
ho variato la resistenza da 10k portandola fino a 1.5k, ho variato la
tensione da 12V a 13.5V, ho cambiato porta COM (da 1 a 2). Dovrei
provare ancora: cambiare ludipipo (ma non lo posso fare: se spendo
altri soldi inutilmente e poi è il PIC difettoso?), cambiare PC,
cambiare PIC (un mese che aspetto i PIC al negozio di elettronica!),
ma ormai ho fatto di tutto.

Ho cambiato i vari settaggi di ICProg, ma niente da fare.

Forse portando la tensione di alimentazione a 5,5/5,6V?
Magari portando la tensione di programmazione a 20V?

Un vivo ringraziamento a chiunque mi voglia aiutare
SergioBS
2004-05-15 16:22:23 UTC
Permalink
Ciao Marco!

io ho utilizzato un altro hw per programmare il PIC ed utilizzavo la
parallela.., ed ho incontrato problemi insormontabili, dopo lungo
peregrinare ho scoperto che la colpa era del sistema operativo del
PC....spero di essere smentito ma io con XP non sono riuscito a far
funzionare nulla, ho testato il tutto su W2K ed è andato tutto al primo
colpo

Sergio
ice
2004-05-15 16:44:30 UTC
Permalink
Hai messo su Win2k sullo stesso pc?
Sei hai provato con Win2k su un altro pc allora significa che l'hw della
parallela/seriale dei due pc è diverso e di conseguenza...
Almeno io sono riuscito a programmare tutti i tipi più comuni di PIC/EEPROM
con ic-prog e un propic2 clone sotto WinXP (sia Home che Pro), Win98se e
Win95. Per PIC "più comuni" intendo: 16f84a, 16f628a, 16f876a, 16f648a,
6f877a, 18f458. Mentre per le e2prom: 2401, 2416, 2432, 2465, 24128, 24256 e
24512/5 (alcune Microchip altre ST)
Invece i pochi tentativi con i 12f675 non mi hanno mai dato ragione!

Ciao!
SergioBS
2004-05-15 22:44:55 UTC
Permalink
Post by ice
Hai messo su Win2k sullo stesso pc?
Sei hai provato con Win2k su un altro pc allora significa che l'hw della
parallela/seriale dei due pc è diverso e di conseguenza...
Almeno io sono riuscito a programmare tutti i tipi più comuni di PIC/EEPROM
con ic-prog e un propic2 clone sotto WinXP (sia Home che Pro), Win98se e
Win95. Per PIC "più comuni" intendo: 16f84a, 16f628a, 16f876a, 16f648a,
6f877a, 18f458. Mentre per le e2prom: 2401, 2416, 2432, 2465, 24128, 24256 e
24512/5 (alcune Microchip altre ST)
Ciao Ice!
anche io ho usato ic-prog e un propic2 clone ma con XP Pro non c'è stato
nulla da fare... su un altro computer invece con W2K è andato tutto bene...
ho programmato al primo colpo sia il 16F84A che il 16F628A che il 16F877A

con XP hai impostato qualche cosa di particolare? mi suggerisci qualche
dritta?
oramai mi ero rassegnato.....
Grazie

Sergio
Andrea F.
2004-05-16 11:52:52 UTC
Permalink
... Almeno io sono riuscito a programmare tutti i tipi più comuni di
PIC/EEPROM
con ic-prog e un propic2 clone sotto WinXP (sia Home che Pro), Win98se e
Win95. Per PIC "più comuni" intendo: 16f84a, 16f628a, 16f876a, 16f648a,
6f877a, 18f458 ...
Sei riuscito a programmare anche il 18f458?

Io ho lo stesso problema di Marco con un 18f258. Sto usando IC-Prog 1.05c
con XP ed un
semplicissimo programmatore JDM alimentato a 9V.

Non c'è verso di programmarlo! Per il resto anche io programmo senza
problemi i PIC
dal 16F84 all' 877.

Qualche dritta? Forse i PIC18 necessitano di qualche accorgimento
particolare?

GRAZIE!! Ciao.
ice
2004-05-16 14:22:08 UTC
Permalink
Sicuramente l'alimentazione a 9V non va bene... a meno che tu poi non abbia
uno step-up che ti porti a 13,2V (ma non credo!)
Per essere programmati i PIC vogliono +5V e +13,2V (poi che alcuni si
riescano a programmare senza rispettare le specifiche è un altro discorso)
Per il resto (oltre al driver che vuole ic-prog per l'XP) ho seguito lo
schema qui riportato:
http://spazioinwind.libero.it/nferrarese/elettronica/pictimer/pictimer.htm
(salvatevi la pagina perchè non è sempre on-line) a cui ho fatto qualche
piccola modifica per una serie di motivi. Cmq anche senza alcuna modifica vi
assicuro che questo programmatore funziona senza problemi.
Sinceramente con il 16f628 non ho mai provato, ma con il 16f877a e il 18f458
sono sempre riuscito a cancellarli anche con il code-protect attivato. Credo
che sia più una questione di programmatore/tensione di alimentazione che di
ic-prog in se per se
Per il programmatore ho usato un 7407N della Texas mentre la ho impostato XP
in modo che non assegni un interrupt alla porta parallela e ho disabilitato
la voce "enable legacy plug&play detection" La parallela non è quella
on-borad della mb ma ne ho aggiunta una su slot ISA (è la mia LPT2) Cmq
anche con la parallela integrata e con altri computer e/o sistemi operativi
mai problemi

Ciao!
SergioBS
2004-05-16 15:38:49 UTC
Permalink
Post by ice
ho impostato XP
in modo che non assegni un interrupt alla porta parallela e ho
disabilitato
Post by ice
la voce "enable legacy plug&play detection"
ciao Ice!....

sono sempre qui a disturbare... io con XP non sono riuscito a combinare
nulla...

utilizzo un programmatore della asamicros (www.asamicros.com) collegato alla
LPT2 e XP professional

sulla parallela ho installato il driver
parport.sys vers. 5.1.2600.0

ho disabilitato gli interrupt .....ma non ho mai visto la voce:
"enable legacy plug&play detection"... non so se sia quella, comunque, dove
la posso trovare?

Grazie

Sergio
ice
2004-05-16 21:43:44 UTC
Permalink
System Properties -> Hardware -> Device Manager -> Ports -> LPT2 -> Port
Settings
Io ho su la SP1
Come hai configuarato la lpt2 (SPP/ECP/EPP)? Di solito ci sono dei jumpers
sulla scheda stessa. La mia è in SPP
Il tuo programmatore non lo conosco... cmq se hai un minimo di manualità e
di tempo prova a realizzare quello che ti ho consigliato (la mia prima
versione era su breadbord e funzionava, quindi anche se monti una 1000 fori
dovresti non aver problemi)

Ciao!
SergioBS
2004-05-17 12:22:02 UTC
Permalink
Post by ice
System Properties -> Hardware -> Device Manager -> Ports -> LPT2 -> Port
Settings
...scusa... ovvero nella stessa finestra dove setti l'interrupt.. scusa ma
ho la versione in italiano e....
Post by ice
Io ho su la SP1
no, io non l'ho ancora installato.... provvedo subito....
Post by ice
Come hai configuarato la lpt2 (SPP/ECP/EPP)? Di solito ci sono dei jumpers
sulla scheda stessa. La mia è in SPP
Ovvero? scusa ma dove setto questa configurazione (via software)?
Post by ice
Il tuo programmatore non lo conosco... cmq se hai un minimo di manualità e
di tempo prova a realizzare quello che ti ho consigliato (la mia prima
versione era su breadbord e funzionava, quindi anche se monti una 1000 fori
dovresti non aver problemi)
A dire il vero sono passato agli AVR, ma ne facevo una questione di
principio....

Grazie

Sergio
Andrea F.
2004-05-16 17:13:59 UTC
Permalink
La batteria da 9V è in serie alla linea che porta5V dalla seriale (15V
stabilizzati
a 5.6V da una res + uno zener) per cui alla fine si ottiene in teoria una
tensione da 14V.

Ho misurato le tensioni di VPP e VCC con un tester ed ho verificato che
sono
rispettivamente + 13.5V e +4V.

Forse è la VCC che è troppo bassa? (gli altri PIC non fanno storie per
questo ;c)
Ciauz!
Post by ice
Sicuramente l'alimentazione a 9V non va bene... a meno che tu poi non abbia
uno step-up che ti porti a 13,2V (ma non credo!)
Per essere programmati i PIC vogliono +5V e +13,2V (poi che alcuni si
riescano a programmare senza rispettare le specifiche è un altro discorso)
Per il resto (oltre al driver che vuole ic-prog per l'XP) ho seguito lo
http://spazioinwind.libero.it/nferrarese/elettronica/pictimer/pictimer.htm
(salvatevi la pagina perchè non è sempre on-line) a cui ho fatto qualche
piccola modifica per una serie di motivi. Cmq anche senza alcuna modifica vi
assicuro che questo programmatore funziona senza problemi.
Sinceramente con il 16f628 non ho mai provato, ma con il 16f877a e il 18f458
sono sempre riuscito a cancellarli anche con il code-protect attivato. Credo
che sia più una questione di programmatore/tensione di alimentazione che di
ic-prog in se per se
Per il programmatore ho usato un 7407N della Texas mentre la ho impostato XP
in modo che non assegni un interrupt alla porta parallela e ho
disabilitato
Post by ice
la voce "enable legacy plug&play detection" La parallela non è quella
on-borad della mb ma ne ho aggiunta una su slot ISA (è la mia LPT2) Cmq
anche con la parallela integrata e con altri computer e/o sistemi operativi
mai problemi
Ciao!
ice
2004-05-16 21:43:43 UTC
Permalink
In effetti potrebbe essere la vcc troppo bassa...
oppure anche la stabilizzazione fatta con lo zener. Prova con uno
stabilizzatore di tensione. Ad esempio un 7812 con relativi condensatori e
gli alzi la soglia con un paio di 1n4148 in serie. Così ottieni
12+0.6*2=13.2V

Ciao!
pelor
2004-05-17 01:52:18 UTC
Permalink
Post by SergioBS
Ciao Marco!
io ho utilizzato un altro hw per programmare il PIC ed utilizzavo la
parallela.., ed ho incontrato problemi insormontabili, dopo lungo
peregrinare ho scoperto che la colpa era del sistema operativo del
PC....spero di essere smentito ma io con XP non sono riuscito a far
funzionare nulla, ho testato il tutto su W2K ed è andato tutto al primo
colpo
Ciao
Credo che XP non riesca a mandare i segnali di sincronizzazione con i tempi
richiesti per la programmazione dei PIC, in modo particolare con i PC
vecchi, inoltre per programmare i 16F84A è necessaria una tenzione più alta
dei 16F84.
Ciao
Pelor
SergioBS
2004-05-17 13:47:15 UTC
Permalink
Post by pelor
Ciao
Credo che XP non riesca a mandare i segnali di sincronizzazione con i tempi
richiesti per la programmazione dei PIC, in modo particolare con i PC
vecchi, inoltre per programmare i 16F84A è necessaria una tenzione più alta
dei 16F84.
Ciao
Pelor
be il PC è un Pentium IV a 1.8 GHz, non è recentissimo ma il PC che ho
provato con W2K è un Pentium III e non ha dato problemi..

Per la tensione in ingresso al programmatore avevo 21 Volts.. ho testato la
tensione in uscita dai regolatori di tensione ed era tutto OK (anche perchè
poi il tutto ha funzionato perfettamente con W2K)

mi è stato detto che XP gestisce lui le porte e che pertanto.... in effetti
Ic-Prog è rilasciato per NT, W2K ma non XP......

vabbè....

Sergio
Zmaster
2004-05-15 16:29:33 UTC
Permalink
Post by Marco
Poiché studente di elettronica, ho deciso di cimentarmi nella
[SNAP]
Post by Marco
Forse portando la tensione di alimentazione a 5,5/5,6V?
Magari portando la tensione di programmazione a 20V?
Non sono un esperto di pic, ma da quello che so nel 16F84A è importante che
la tensione di programmazione sia 13.5V (al contrario del 16F84 non gli
bastano tensioni di poco inferiori).
perchè poi ci metti una resistenza?


--
...:::Zmaster:::...
zmaster.adsl[ANTISPAMSYSTEM]@tin.it
www.zmaster.tk
Iw7
2004-05-15 22:47:02 UTC
Permalink
[CUT]

Quando ho realizzato il mio di programmatore seriale ho fornito esternamente
solo i 5 volt, il resto lasciavo che venisse fornito dalla porta seriale e
non ho avuto nessun genere di problema....a parte l'incapacità di ic-prog a
cancellare una 16f628 con il code-protect attivo.
Ciao ciao e buon lavoro.
astor
2004-05-20 20:08:16 UTC
Permalink
Vi posso garantire che con il PIC16F628-I/P ci ho sbattuto la testa pochi
giorni fa. Infatti quando lo programmi, dopo per essere 'riprogrammato' lo
devi necessariamente cancellare con la procedura di BULK ERASE. Questa
sembra essere una grande differenza rispetto agli altri dipi di chip FLASH
della serie 16Fxx.
Per chi non conosce bene il mondo dei PICmicro, la procedura di BULK ERASE è
una speciale sequenza di comandi che permette la cancellazione globale della
memoria programma del chip. Generalmente esistono due tipi di procedure:
BULK ERASE PROGRAM MEMORY (quindi cancella la memoria programma) e BULK
ERASE DATA MEMORY (quindi cancella solo la memoria EEPROM dati).
Quindi... occhio a quando si sceglie il tipo di programmatore...
assicuratevi che abbia anche questa funzione.
Se vi puo' interessare io ho lo YAPP!3 e questa funzione la ha
(http://yapp3.elettronicamente.com) e funziona perfettamente.

Spero sia di aiuto.

Ciao a tutti.
Astor.
Post by Iw7
[CUT]
Quando ho realizzato il mio di programmatore seriale ho fornito esternamente
solo i 5 volt, il resto lasciavo che venisse fornito dalla porta seriale e
non ho avuto nessun genere di problema....a parte l'incapacità di ic-prog a
cancellare una 16f628 con il code-protect attivo.
Ciao ciao e buon lavoro.
Iw7
2004-05-20 21:33:23 UTC
Permalink
Post by astor
Vi posso garantire che con il PIC16F628-I/P ci ho sbattuto la testa pochi
giorni fa. Infatti quando lo programmi, dopo per essere 'riprogrammato' lo
devi necessariamente cancellare con la procedura di BULK ERASE. Questa
sembra essere una grande differenza rispetto agli altri dipi di chip FLASH
della serie 16Fxx.
Se non mi sbaglio è la procedura che bisogna adottare con il 628 quando
attivi il code protect, ci dovrebbe essere un articolo microchip in
proposito, diversamente anche per questo modello un ludipipo con ic-prog
sono sufficienti.

Marco
2004-05-16 11:55:44 UTC
Permalink
Innanzitutto grazie per aver dedicato parte del vostro tempo al
rispondermi.

Per rispondere a Zmaster: la resistenza c'era nel progetto originario,
collegata alla porta seriale, ed ho deciso di mantenerla (ho fatto
delle prove portandola a 2k circa, ma niente da fare).

Penso poi che presterò il PIC ad una persona che me lo possa provare.

Per ora intanto mi dedico allo studio dell'assembler, che forse è più
importante.

Grazie di nuovo a tutti.
Loading...