Go Down

Topic: Guida: La programmazione di micro ATMEL con Arduino [rel. 4] (Read 67770 times) previous topic - next topic

Michele Menniti



quando chiedi ti fai scappare la logorrea e quando chiedi fai il criptico? Suvvia, un po' di coerenza!

Questa proprio non l'ho afferrata...

mi pare più facile chiudere questa sezione di discorso se dopo quattro post nessuno capisce l'altro :smiley-eek-blue:
Quote

Quote

Quote

Stasera moglie permettendo faccio delle prove.

perché, di solito si siede sulla breadboard per impedirti di sperimentare :smiley-eek-blue:?


No generalmente si siede da un altra parte ... ma è off topic
XD

[/quote]
Ah, beh, allora è più che comprensibile che mandi per aria la sperimentazione, buon divertimento XD XD XD
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

niki77

Chiudo questa breve parentesi facendo una dovuta precisazione.

A parte il giubilo e lo scherzo, massima stima per menniti , il lavoro che ha fatto e l'impegno nel forum a condividere le sue esperienze.

E grazie a gente come lui che anche i neofiti imparano e non è colpa sua se quelli come me spaccano i maroni perchè non si accontentano di sentirsi dire 'FAI COSI'  ]:D



Vi è una spiegazione scientifica a tutto.
La fede è solo quell'anello che si porta al dito dopo il matrimonio.

Michele Menniti


Chiudo questa breve parentesi facendo una dovuta precisazione.

A parte il giubilo e lo scherzo, massima stima per menniti , il lavoro che ha fatto e l'impegno nel forum a condividere le sue esperienze.

E grazie a gente come lui che anche i neofiti imparano e non è colpa sua se quelli come me spaccano i maroni perchè non si accontentano di sentirsi dire 'FAI COSI'  ]:D

Beh, grazie :smiley-red: ma non c'era alcun bisogno, tutti qui, te compreso, fanno cose utili per il Forum; ti spiego i miei precedenti interventi: mi pareva d'aver capito che volessi degli approfondimenti teorici sulle tecniche usate, allora ho provato a spiegare ciò che credevo tu volessi sapere, poi però mi hai risposto che potevo risparmiarmelo, ma senza darmi spiegazioni a tua volta, allora sono andato in "palla", e non ho capito più in cosa potevo esserti utile, cioè cos'era che volevi approfondire; ecco perché ho proposto di chiudere la cosa, probabilmente mi sono perso qualche passaggio; il fatto è che, per mestiere, sono abituato a dare risposte precise a domande esplicite, altrimenti mi caccerebbero con infamia; se il discorso si fa generico diventa complicato capire cosa bisogna approfondire. Grazie ancora :)
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

niki77

L'importante è che siano tutti coscienti del fatto che apprezzo quello che fai, per me e per tutti ed in tutti i casi.

La mia affermazione 'Potevi risparmiartelo' era riferita soltanto alla spiegazione che mi avevi dato sul clock del micro, più nello specifico il fatto che se il clock è diverso vanno a farsi friggere i timing delle librerie.
Per me era scontata quella cosa, anche se a posteri mi rendo conto che non per tutti potesse esserlo, e di questo non posso che fare un grande MEA CULPA.
Spero che non ti sia offeso per questo, le spiegazioni a questo punto erano dovute, ma penso che alla base di tutto ci sia stata solo incomprensione.
Vi è una spiegazione scientifica a tutto.
La fede è solo quell'anello che si porta al dito dopo il matrimonio.

Michele Menniti


L'importante è che siano tutti coscienti del fatto che apprezzo quello che fai, per me e per tutti ed in tutti i casi.

La mia affermazione 'Potevi risparmiartelo' era riferita soltanto alla spiegazione che mi avevi dato sul clock del micro, più nello specifico il fatto che se il clock è diverso vanno a farsi friggere i timing delle librerie.
Per me era scontata quella cosa, anche se a posteri mi rendo conto che non per tutti potesse esserlo, e di questo non posso che fare un grande MEA CULPA.
Spero che non ti sia offeso per questo, le spiegazioni a questo punto erano dovute, ma penso che alla base di tutto ci sia stata solo incomprensione.


Ma figurati! l'importante è portare avanti la baracca, io qui mi diverto un mondo e mi rilasso, e ti assicuro che ne ho tanto bisogno :) e poi sono uno che scherza sempre, non sono certo il tipo che si offende; certo un paio di volte mi sono saltati i ghingheri, e ne avevo ben ragione, penso ancora, ma erano situazioni estreme che nulla c'entravano col Forum o con l'argomento, ma a chi non capita?
Quindi se vogliamo riprendere il discorso sono qui, compatibilmente con gli impegni di lavoro... XD
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

xelendilx

http://www.ebay.it/itm/Atmel-ATmega8A-PU-ATMega8-DIP28-/160519485716?pt=LH_DefaultDomain_212&hash=item255fb4f914#ht_2646wt_905

Questi dovrebbero andare bene vero? Dovrebbero essere uguali agli atmega328 solo con 8k di memoria.. Chiedo per sicurezza!
Quasi quasi prendo questi, tanto per le cavolate che faccio io 8k sono più che sufficienti!

Michele Menniti

Non sono uguali, ma simili; la versione 8K dei 328 si chiama 88; comunque questi micro si programmano senza problemi, già fatte abbondanti sperimentazioni.
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html


f.schiano

Rieccomi, pronto con il quarzo e tutto l'occorrente per provare a fare funzionare il tutto...

Riparto dall'intervento Preziosissimo di LEO:

Quote

1) hai un Arduino UNO con un Atmega FUNZIONANTE (e qui NON devi dirmi di NO perché sennò son dolori)
2) hai un Atmega che vuoi mettere standalone, caricandoci sopra lo sketch con l'Arduino (non m'importa sapere se ha o meno il bootloader)
3) hai letto la guida del Menniti e sai cos'è
4) hai fatto le modifiche al file boards.txt

Detto questo, sai un po' come muoverti. Allora, ripartiamo da ZERO! ZERO ASSOLUTO!
1) prendi l'Arduino (scollegato dal PC), lo colleghi, ci carichi sopra l'ArduinoISP, aspetti "done uploading" e poi lo stacchi e chiudi l'IDE
2) prendi la breadboard
3) monti sulla breadboard l'Atmega
4) monti il quarzo infilando 1 pin di fronte al pin 9 dell'Atmega e l'altro di fronte al pin 10 dell'Atmega
5) 2 condensatori da 22pF! Importante: verifica la capacità! Altri condensatori mandano a p... tutto
6) 1 condensatore da 22pF lo infili con un piedino dopo il piedino del quarzo sul pin 9 e l'altro lo infili nel "-" laterale
7) stessa cosa con l'altro, ma sul pin 10, dopo il piedino del quarzo
adesso la resistenza di pull-up per il reset: una 10K infilata su pin 1 e nel "+" laterale
9) ora colleghi l'alimentazione: pin 7 e pin 20 verso "+", pin 8 e pin 22 verso "-"
10) metti una R da 1K sul piedino 19 e portala fuori dalla zona interessata dall'Atmega, poi prendi un led e metti il piedino più lungo nella stessa fila nella breadboard dove hai infilato il capo libero della R ed il piedino più corto del led nel "-" laterale
11) fai un paio di ponticelli fra il "+" della fila di destra ed il "+" della fila di sinistra della breadboard, stessa cosa unendo i "-" dei 2 lati
12) collega ora così:
PIN ARDUINO -> PIEDINO ATMEGA SOLITARIO
10 -> 1
11 -> 17
12 -> 18
13 -> 19
5V -> "+" della breadboard
GND (uno qualunque) -> "-" della breadboard
13) attacca il cavetto al PC e apri l'IDE
14) seleziona lo sketch "Blink" dagli esempi
15) seleziona "Atmega in Stand Alone 16 MHz (w/Arduino as ISP)" da Boards
16) premi su UPLOAD e guarda cosa succede:
17) se dà errori avrdude sul terminale in basso dell'IDE, prendi un condensatore da 10 uF, infilalo col piedino corto a GND dell'Arduino e col piedino lungo nel pin RST dell'Arduino e ritorna al punto 16)


Prima di mettere mano con i componenti volevo sapere se e' tutto giusto quello detto da Leo, visto che l'intervento e' di un po' di tempo fa e non vorrei che in questo mese sia stata fatta una qualche "Scoperta" :) !!!

Stasera provo a rifare il tutto, intanto aspetto una vostra risposta.

Fabrizio.
L'impossibile...richiede solo piu' tempo!

leo72


f.schiano

Ho rifatto tutti i passaggi dello ZERO ASSOLUTO tranne il

Quote

10) metti una R da 1K sul piedino 19 e portala fuori dalla zona interessata dall'Atmega, poi prendi un led e metti il piedino più lungo nella stessa fila nella breadboard dove hai infilato il capo libero della R ed il piedino più corto del led nel "-" laterale


Ma ho sempre errore, in tutti e due casi (con o senza condensatore da 10 uF):

Code: [Select]
Binary sketch size: 1010 bytes (of a 32768 byte maximum)
avrdude: stk500_program_enable(): protocol error, expect=0x14, resp=0x50
avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.

avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51


Cosa faccio??? Lascio perdere??? :( A malincuore?


L'impossibile...richiede solo piu' tempo!

Michele Menniti

Il punto 10 lo puoi omettere, serve solo per vedere se il blink funziona, ma se va a buon fine lo puoi mettere dopo.
Domande:
1 - Hai caricato lo sketch ArduinoISP sull'Arduino mentre nell'IDE è settata la board Arduino? E' andato a buon fine (done uploading senza errori)?
2 - L'errore lo hai quando mandi il blink allo stand-alone: prima di mandare il blink hai settato nell'IDE la board "Atmega in Stand Alone..."?
3 - il condensatore da 10µF tra reset e GND di ARDUINO lo hai montato prima di inviare lo sketch?
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

f.schiano

#537
Oct 16, 2011, 08:29 pm Last Edit: Oct 16, 2011, 08:33 pm by f.schiano Reason: 1

Il punto 10 lo puoi omettere, serve solo per vedere se il blink funziona, ma se va a buon fine lo puoi mettere dopo.
Domande:
1 - Hai caricato lo sketch ArduinoISP sull'Arduino mentre nell'IDE è settata la board Arduino? E' andato a buon fine (done uploading senza errori)?
2 - L'errore lo hai quando mandi il blink allo stand-alone: prima di mandare il blink hai settato nell'IDE la board "Atmega in Stand Alone..."?
3 - il condensatore da 10µF tra reset e GND di ARDUINO lo hai montato prima di inviare lo sketch?


1. si'
2. si' . e ho anche settato nell ide Atmega in Stand alone a 16 MHz
3. No, ho prima provato a inviare lo sketch senza condensatore, poi visto che mi dava errore ho attaccato il condensatore e ho ripremuto Upload, ma non e' cambiato nulla.

(Il quarzo non ha un verso preciso vero? Un piedino vale l'altro?!)

EDIT: Non so se puo' essere un problema o meno, ho misurato la tensione data dall'arduino tra pin 5V e GND, e non e' 5V, ma circa 6V! Potrebbe anche essere un problema di multimetro, ma non penso in quanto finora non mi ha mai dato problemi (anche se lo utilizzo poco).

Aspetto vostre notizie.
L'impossibile...richiede solo piu' tempo!

Michele Menniti



Il punto 10 lo puoi omettere, serve solo per vedere se il blink funziona, ma se va a buon fine lo puoi mettere dopo.
Domande:
1 - Hai caricato lo sketch ArduinoISP sull'Arduino mentre nell'IDE è settata la board Arduino? E' andato a buon fine (done uploading senza errori)?
2 - L'errore lo hai quando mandi il blink allo stand-alone: prima di mandare il blink hai settato nell'IDE la board "Atmega in Stand Alone..."?
3 - il condensatore da 10µF tra reset e GND di ARDUINO lo hai montato prima di inviare lo sketch?


1. si'
2. si' . e ho anche settato nell ide Atmega in Stand alone a 16 MHz
3. No, ho prima provato a inviare lo sketch senza condensatore, poi visto che mi dava errore ho attaccato il condensatore e ho ripremuto Upload, ma non e' cambiato nulla.

(Il quarzo non ha un verso preciso vero? Un piedino vale l'altro?!)

Il quarzo non ha un verso, l'importante è averlo collegato ai pin giusti: puoi dirmi quali sono, per scrupolo?
Sei sicuro che i condensatori siano da 22pF e siano collegati correttamente?
So che avevamo controllato l'assemblaggio ma a questo punto è davvero difficile capire dove sta il problema
Puoi scrivermi la sigla completa che leggi sul micro che stai usando in stand-alone, per favore?
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

f.schiano

I condensatori li ho comprati in un negozio di elettronica e ho chiesto due cond. da 22pF , sugli stessi c'e' il numero 22, spero che siano giusti...

Il quarzo l' ho collegato al 9 e 10 del chip.

La sigla e': ATMEGA328P-PU , sopra c'e' scritto ATMEL 1112
L'impossibile...richiede solo piu' tempo!

Go Up