Pic Micro, Arduino, Atmel, Microchip, Freescale, Texas Instrument, ecc. Strumenti di sviluppo, firmware e progetti.
#4319
salve a tutti,
facendo pulizie, ho ritrovato alcuni pic 16f84a, rispolverando gli appunti ho voluto realizzare alcuni progetti.
il problema che ho riscontrato e nel caricare il file *.hex sul pic.
ho acquistato pickit3, scaricato MPLAB X IDE ma dopo varie guide su internet, modifiche, no sono riuscito.

aiutoooo

PS.
il codice è corretto perché l'ho simulato con proteus 8.
ho anche provato a scrivere un codice banale il led (porta,0) si accende premendo un pulsante (porta,1)
#4320
Se non ricordo male, il 16F84 ha bisogno di una tensione più alta di VDD sul pin MCLR per "capire" che deve entrare in programmazione.
Se il pin MCLR è collegato al ramo VDD attraverso un resistore, è possibile che il Pickit3 non riesca ad imporre tale tensione più alta.
Ci possono essere anche motivi software: accertati che il pickit3 sappia di avere sotto mano un 16F84A, e che usi la modalità VPP e non LVP.
Non so se è il caso del 16F84, ma alcuni PIC hanno un piedino (chiamato PGM o roba del genere) che dovrebbe servire per scegliere se entrare in programmazione con VPP o senza.
Durante la programmazione, tale piedino dovrebbe essere stabile al livello richiesto, e non ad un livello casuale derivante dal fatto che è scollegato.
Per una diagnosi più "mirata" sarebbe utile conoscere almeno il testo del messaggio d'errore :)
#4321
La tua domanda è: dottore, non sto bene Da che cosa dipende?
Capirai che con le informazioni fornite non si può dare alcun aiuto, perchè le cause della "malattia" possono essere centinaia.

Cosa vuol dire "no sono riuscito"?
Come è stato prodotto l'hex?
http://www.microcontroller.it/Tutorials/PIC/fileHEX.htm
Quale funzione di MPLAB-X hai richiamato per programmare? Che segnalazioni di errore ha dato?
Il chip era collegato correttamente a ICSP e alimentato?
http://www.microcontroller.it/T&T/PIC/pi%C3%B9icsp.htm
http://www.microcontroller.it/Progetti/ ... prog_0.htm

Se hai un file hex buono puoi usare, per iniziare, il Pickit3 Programmer (si recupera da Microchip la v3.10). Programma immediato e semplice da usare.
Altrimenti in area MPLAB-X usa MPLAB-IPE. Però è meno immediato.

Da lì, prova e se non va indica i messaggi di errore che appaiono. Solo così si può capire dove sta il problema.

Quanto ai simulatori, per favore, buttali: servono solo a perdere tempo. E poi la "simulazione" non ha niente a che vedere con la programmazione.
#4323
mars ha scritto:Quanto ai simulatori, per favore, buttali: servono solo a perdere tempo. E poi la "simulazione" non ha niente a che vedere con la programmazione.

Vorrei aggiungere una nota per chiarire che, nel contesto specifico del citato software Proteus 8, il termine "simulazione" potrebbe in realtà indicare la cosiddetta "emulazione virtuale", cioè l'abbinamento dell'hardware, rappresentato dallo schema elettrico, e del software, rappresentato dal file oggetto ricavato da una compilazione.
Il Proteus (http://www.labcenter.com) è un software nato per disegnare schemi elettrici e circuiti stampati, ma come "furbata aggiuntiva" permette di sfruttare alcuni simboli grafici dei componenti anche in modo interattivo.
In breve, il simbolo grafico di un interruttore si può cliccare col mouse e azionare virtualmente nei due stati ON e OFF, osservando sia una modifica dell'aspetto sul video del computer, sia la produzione di un evento che il programma riconosce e accetta.
Lo stesso principio si può estendere al simbolo di un LED, che collegato all'interruttore di prima può apparire scuro o chiaro in base all'informazione di OFF oppure ON che il programma ricava in modo interattivo dai clic dei mouse.
Anche i tratti che rappresentano i collegamenti elettrici possono essere mostrati in colori diversi a seconda dello stato logico che assumono, apparendo ad esempio blu se sono a 0 e rossi se sono a 1.
Nel caso di un circuito con microcontroller, pulsanti, LED, moduli LCD alfanumerici o grafici, e tante altre diavolerie tecniche, è possibile disegnare lo schema elettrico e procedere poi nel modo usuale con lo "sbroglio" delle piste, ma è anche possibile aprire una finestra con dentro un compilatore C esterno, scrivere il programma, compilarlo, e poi "caricare virtualmente" il .HEX vero nello schema.
A questo punto, con un clic sull'icona che avvia l'emulazione, il firmware vero interagisce con lo schema e produce gli stessi effetti che produrrebbe nel circuito vero, facendo cambiare il colore dei fili in base agli stati logici via via assunti; facendo apparire accesi o spenti i LED e i motori; facendo vedere scritte nelle sagome dei display alfanumerici, e addirittura pilotando i singoli pixel dei display grafici in modo che si vedano le immagini.
Se lo schema usa tasti, pulsanti, commutatori, potenziometri, l'utente può cliccarci sopra e azionarli, ovviamente inviando al firmware le informazioni corrispondenti.
Se il micro gestisce una porta seriale, è possibile collegarne i pin ad un apposito simbolo che, in sede di emulazione, apre una finestrella dove l'utente digita i caratteri da inviare al firmware, e vede i caratteri prodotti dal firmware.
In uno degli esempi di utilizzo che accompagnano il dimostrativo gratuito del Proteus, si vede uno schema con un micro della famiglia 8051 destinato a realizzare un gioco di scacchi con display grafico sensibile al tocco.
Non sono un appassionato di scacchi, quindi non saprei dire se l'algoritmo sia capace o no di battere un giocatore umano medio, ma ho visto e verificato che l'emulazione virtuale permetterebbe di scrivere e debuggare tutto il firmware senza dover prima avere in mano la scheda vera.
Labcenter vende per poche sterline i simboli interattivi di quasi tutti i micro in commercio, compresi gli oggetti "grandi & complessi" con decine di piedini e numerose periferiche interne.
Con questo non voglio dire che l'emulazione virtuale copra ogni possibile caso d'impiego di un microcontroller,
ma secondo me l'idea è utile per poter almeno iniziare a scrivere il firmware senza dover attendere la disponibilità di una scheda assemblata.
#4324
Al di là di ogni parere più o meno motivato sulla validità dei simulatori generici, ripeto:

il fatto che la "simulazione" sia andata a buon fine oppure no, non ha nulla a che vedere con la mancata programmazione del chip.

E' come se uno ha scritto un articolo che il correttore di Word trova valido e per questo sia sorpreso se la stampante non funziona.

Se si inizia senza avere la minima idea di come stanno le cose, partendo non dai principi, ma dal caricare gli "schecce" senza avere l'idea del perchè e del percome, al minimo si va avanti con grande difficoltà.
#4326
mars ha scritto: il fatto che la "simulazione" sia andata a buon fine oppure no, non ha nulla a che vedere con la mancata programmazione del chip.

Concordo al 100%, ma il fatto che la "simulazione" non risolva questo particolare quesito non implica che non possa esser d'aiuto in altri casi, oppure che vada bollata a priori come inutile. :)
mars ha scritto:Se si inizia senza avere la minima idea di come stanno le cose, partendo non dai principi, ma dal caricare gli "schecce" senza avere l'idea del perchè e del percome, al minimo si va avanti con grande difficoltà.

Anche qui concordo al 100%, ed è proprio perché concordo che cerco di contribuire a questo spazio con più righe dello stretto necessario: chi legge potrebbe trovare uno spunto utile anche fuori del "topic" principale in etichetta.
Dimmer su aspirazione

Ciao a tutti ho una ventola di aspirazione in came[…]

Visita il nostro canale telegram