Esatto, in Mikrobasic la configurazione dei fuses non avviene nel codice, ma i fuses vengono impostati nell'apposita finestra di configurazione.
Poi in fase di compilazione Mikrobasic provvede a scrivere tale impostazioni all'interno del file .hex generato.
La czt in questo caso, è che è stato postato solo il file .pbas, e non il progetto completo.
Se avesse postato il progetto completo, basterebbe aprirlo con mikrobasic, per avere tutto sotto mano, e quindi pure l'impostazione dei fuses.
Per questo motivo sostenevo che se un file .hex funziona all'utente nokay, lo stesso file deve funzionare anche a Luca280, non c'è nulla da impostare.
"
In ogni caso, tutto a 0 nel 16F876 indica la seguente situazione:
- 0000h to 1FFFh code protected che è meglio non fare durante le prove
- In-Circuit Debugger enabled, RB6 and RB7 are dedicated to the debugger. il che, se va bene per il debug ICD, inibisce l' uso di RB6-7
- Unprotected program memory may not be written to by EECON control
indifferente
- Data EEPROM memory code protected
indifferente
- RB3 is digital I/O, HV on MCLR must be used for programming
ok
- BOR disabled
maybe
- PWRT enabled
ok
- WDT disabled
se non si usa, ok
- LP oscillator
questo prevede cristalli low power, tipo 32768kHz "
Queste voci dove le trovo da settare?in quanto in config bit ho solo 1 e 0 e senza quelle voci di LP Oscillator etc....
Comunque provo a rifare il circuito in quanto con tutti i fuses settati di default,con 2 programmi,non succede nulla,anche togliendo tutti i fuses UTILIZZANDO MeProg e IC-Prog,non funziona niente...
Grazie
Luca
marsram
postato il: 03.03.2013, alle ore 19:39
Repetita iuvant, sopratutto se non si vuole capire.
Quanto ho scritto NON sono pareri personali, ma dati di fatto tecnici facilmente verificabili anche ad una lettura superficiale del foglio dati del componente.
Quindi:
1. i "fuses" nei PIC non esistono. Ci sono i Configuration Bit.
La cui funzione è dettagliata bit per bit nei fogli dati. Da li si vede quale è la loro funzione.
Per il micro in questione li ho anche elencati.
2. Non c'è NIENTE da settare, dato che l' hex contiene anche la giusta configurazione
3. la quale non è 00. Basta leggere il file hex !
4. per curiosità ho provato a lanciare il Pickit2 Programmer sulla mia macchina e caricare l' hex in questione. Si carica senza problemi, indica che un configuratore c'è e ne dà il valore. Non ho provato a programmare il PIC perchè non ho questo PIC, ma ho provato a forzare un PIC16F876A ed è stato programmato.
Quindi:
una volta caricato il file SIA CON PICKIT2,MepROG SIA IC-PROG,non compare niente
cosa vuole dire ? Niente dove ?
Se sai programmare i PIC, perchè sta fissazione sui "fuses"? Perchè non ascolti quello che ti stiamo dicendo ?
Stiamo dicendo che :
L' hex con Pickit2 Programmer v2.61 si carica correttamente, il configuratore è caricato, la memoria programma anche (si vede bene dalla finestra di interfaccia) e si programma pur un chip collegato
Quindi, fino a questo punto, puoi arrivare sicuramente senza incertezze. Se poi non funziona l' hardware, dipenderà da qualcosa di diverso dai "fuses".
Che altro c'è da dire?
ilariostella
postato il: 03.03.2013, alle ore 21:04
marsram non c'è altro da dire, hai già detto tutto, benissimo e più volte. chi programma dovrebbe sapere cosa sono i configuration bit, dovrebbe sapere che sono scritti nella configuration word al'indirizzo 2007h e dovrebbe sapere a cosa servono. Una lettura del datasheet alla voce "special features of the cpu" potrebbe essere illuminante. Comunque come detto,il sistema migliore è mettere il CONFIG direttamente nel sorgente,al limite si può correggere qualcosa all'ultimo istante agendo sul pulsante "configuration"
Se comprendere è impossibile conoscere è necessario... [P. Levi]
L'ignoranza non è mai meglio della conoscenza. [E. Fermi]
marsram
postato il: 05.03.2013, alle ore 15:02
Aggiungo solo l' acida osservazione che il postulante è sparito....
Ci meravigliamo o non è il caso?
pippodue
postato il: 12.03.2013, alle ore 10:34
marsram: Tutti i compilatori, Basic, C, Assembler, Pascal, ecc. accettano la o le righe di CONFIG del sorgente e le integrano automaticamente nell' hex in modo tale che il dispositivo di programmazione carichi anche i Configuration registers con i giusti valori.
Fino ad oggi ho usato il menu Configure-Configuration bits di MPLAB, ma preferirei configurare dal sorgente come tu dici. Il problema è che non trovo da nessuna parte la sintassi dell'istruzione Config. In un libro sul C18 (Laurenti) trovo una direttiva #Pragma Config ma non so se possa funzionare col compilatore C30. I nomi dei bit da configurare potrei anche prenderli dal file .h descrittore della MCU, ma la benedetta istruzione Config per il compilatore C30 dove la trovo? Nella User Guide del C30 trovo delle macro tipo _FOSC , debbo usare quelle?
anche i grandi uomini, come gli uomini comuni, possono talvolta cadere in errore (Voltaire)
pippodue
postato il: 12.03.2013, alle ore 13:19
mi autorispondo che ho beccato questa istruzione da mettere nel sorgente per scegliere l'oscillatore di un dsPic e sembra funzionare:
_FOSCSEL (FNOSC_FRCPLL & IESO_ON)
anche i grandi uomini, come gli uomini comuni, possono talvolta cadere in errore (Voltaire)
Luca280
postato il: 13.03.2013, alle ore 19:04
marsram: Aggiungo solo l' acida osservazione che il postulante è sparito....
Ci meravigliamo o non è il caso?
Scusa se c'è gente(per fortuna) ke lavora...comunque ho lasciato perdere..il file.hex del sito è diverso da quello fornitomi dall'autore,amen...GRAZIE a tutti
Luca
Leonard55
postato il: 19.12.2025, alle ore 11:13
hii
Leonard55
postato il: 19.12.2025, alle ore 11:14
Every reliable system depends on protection that reacts instantly and without drama. From homes to workplaces, electrical safety is built on smart preventive choices. When sudden surges threaten stability, well-designed circuits rely on to interrupt danger before harm occurs. This quiet response protects equipment, reduces risk, and ensures long-term performance, proving that even small safeguards can make a meaningful difference.
Come utente anonimo puoi leggere il contenuto di questo forum ma per aprire una discussione
o per partecipare ad una discussione esistente devi essere registrato ed accedere al sito