Go Down

Topic: [RISOLTO] ATMega328 - Arduino AVR ISP - set fuse (Read 4434 times) previous topic - next topic

DanielaES


Mi incuriosisce questa cosa, non so se altri hanno provato, mi pare che Leo sia rimasto sulla versione 0023, forse Testato deve aver fatto delle prove con la 1.0.
Comunque per ora sono ancora fuori sede e ci vorrà fine della prossima settimana per rientrare, poi si vedrà.


Dal canto mio era solo curiosità, senza nessunissima fretta, sono contentissima della situazione attuale visto che sono riuscita a far funzionare tutto :)

Testato

a memoria ricordo che:

arduino ha fatto un passo avanti, gestendo direttamente l'upload dello sketch, quindi senza piu' bisogno di creare board.

Ora testo la cosa e vediamo come va la mia memoria
vi fo sapere a momenti :)
- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Testato

#32
Jan 22, 2012, 12:03 am Last Edit: Jan 22, 2012, 12:12 am by Testato Reason: 1
TESTATO

hardware usato: arduino uno r1 - atmega8A su standalone su virtualboard arduinong

la mia memoria funziona, ed abbiamo scoperto anche un bug

lo sketch ArduinoISP della IDE1.0 ha problemi, e non permette il caricamento ne' di bootloader ne' di sketch verso uno standalone

La soluzione che ho trovato e' di caricare su arduino lo sketch ArduinoISP della versione 023, e poi usare l'ide 1.0 per bootloader o sketch

La cosa positiva, come dicevo, e' che l'ide 1.0 stesso da File->Upload Using Programmer gestisce ufficialmente il caricamento di uno sketch su standalone, quindi non c'e' piu' l'obbligo di creare boardvirtuali.

passo la palla a leo/lesto per il confronto di arduinoisp 0.23vs1.0 in modo da correggere il problema.
- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

leo72


La cosa positiva, come dicevo, e' che l'ide 1.0 stesso da File->Upload Using Programmer gestisce ufficialmente il caricamento di uno sketch su standalone, quindi non c'e' piu' l'obbligo di creare boardvirtuali.

Spiega per benino questo passaggio. Che significa? Come faccio a dire all'IDE quale micro sto flashando affinché passi poi i parametri corretti ad avrdude? Se voglio usare un Tiny? O un 644?

Testato

qui scatta pero' il diritto al ringraziamento nella rel 2 della guida del menniti  :)

ho appena finito di fare molti test in merito

ti rispondo ed aggiungo un paio di cose:

- questo nuovo comando semplicemente evita di dover creare board virtuali per i chip ufficiali. Quindi posso caricare uno sketch via isp su un 328P senza dover toccare nulla e non creare nessuna board

- nulla vieta di crearne di nuove, tipo per usare tutto lo spazio di flash dovro' creare una board con lo spazio modificato

- ci sono 3 differenze nella crezione di una board per ide 1.0, le elenco di seguito
.. cambiare upload.protocol=arduino (prima era stk500)
.. rimuovere upload.using=arduino:arduinoisp (e' stato sostituito dal comando di cui sopra)
.. aggiungere build.variant=standard (alla fine della board)
- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

leo72

Non  hai risposto alla mia domanda...

Come faccio a dire all'IDE quale micro sto flashando affinché passi poi i parametri corretti ad avrdude? Se voglio usare un Tiny? O un 644?

Testato

selezionando il corretto chip, scusa se l'ho ritenuto superfluo, per questo le mie guide sono di mezza pagina e quelle del menny di 100  :)

se vuoi caricare uno sketch su un atmega8, come fatto nei miei test, selezionerai la board ArduinoNG, e cosi' via per tutti gli altri.

Prima non era possibile, dovevi spiegare al principiante di turno il perche' ed il per come creare una board.

Ora selezioni arduinoNG e carichi blick su atmega8, senza dover imparare nulla di quanto c'e' dietro

per il resto rimane come era, quindi ai piu' "avanti" come te, continuerai a creare board, mettere core, ecc ecc, ti rimane il vantaggio di avere un cmando gia' definito ed ufficiale, non serve piu' mettere upload.using=arduino:arduinoisp.
Essendo ufficiale se non funziona si apre un bug ufficiale e si dice che massmo e' un cretino, ecc ecc :)
- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

leo72

L'IDE 1.0 NON ha preimpostati chip al di fuori della serie Atmega88/168/328? Se io volessi flashare un TINY84?
Devo sempre crearlo a mano.

Testato

#38
Jan 22, 2012, 12:32 pm Last Edit: Jan 22, 2012, 12:36 pm by Testato Reason: 1

L'IDE 1.0 NON ha preimpostati chip al di fuori della serie Atmega88/168/328?

esatto, ha solo le sue board ufficiali, se il caricamento sketch non funziona su 8A potrai lamentarti se non funzionera' su altri chip sono fatti tuoi
Quote

Se io volessi flashare un TINY84? Devo sempre crearlo a mano.

yes, tenendo presente i miei appunti di cui sopra per le board 1.0, non puoi usare direttamente le vecchie
Ti resta il vantaggio del comando apposito che prima non si aveva, rendendo piu' semplice la spiegazione del tutto ad un principiante.
- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Testato

aggiungo un'ulteriore elemento per la guida 2.0

nell'ide 1.0 (ma gia' anche dalla 0.23), e' incluso l'optiboot non solo per il 328, ma anche per 168 ed 8, pero' le board ufficiali inserite non ne tengono conto, quindi caricando il bootloader su un atmega8A ad esempio, si avra' il vecchio bootloader.

Per usare il nuovo optiboot sui vecchi chip si deve creare una board nuova, cambiando appunto la path del bootloader.
- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Testato

sul forum inglese e' confermato dal moderatore il problema di arduinoisp su ide 1.0

lo sketch e' lo stesso (ho provato infatti ad usare lo scketch 0.23 sulla 1.0 con esito negativo), quindi la differenza e' nel come viene compilato o in librerie che vengono coinvolte dall'ide 1.0

inviando una mail al moderatore lui invia u arduinoisp funzionante sulla 1.0
non so perche' ancora non vogliono renderlo pubblico, ma lo faro' io quando avro' il file  :)
la discussione e' questa http://arduino.cc/forum/index.php/topic,82011.msg633055.html#msg633055

michele mi sa che una nuova versione va fatta  :)
- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

leo72


sul forum inglese e' confermato dal moderatore il problema di arduinoisp su ide 1.0

lo sketch e' lo stesso (ho provato infatti ad usare lo scketch 0.23 sulla 1.0 con esito negativo), quindi la differenza e' nel come viene compilato o in librerie che vengono coinvolte dall'ide 1.0

inviando una mail al moderatore lui invia u arduinoisp funzionante sulla 1.0

Questa è una cosa che non capisco. Perché non lo mette allegato alla discussione, così chi lo vuole se lo scarica?

Quote

non so perche' ancora non vogliono renderlo pubblico, ma lo faro' io quando avro' il file  :)

Bravo  ;)

Michele Menniti

Ciao Testato,
ho letto di colpo tutti gli ultimi interventi; mi pare, riassumendo, di capire che tu ha messo a punto la tecnica ISP per la 1.0 ma questa non funziona a causa di un bug, ho capito bene? In caso contrario puoi rispiegarmi in due parole quali problemi ci sono?
Chiara la questione dei micro extra e delle facilitazioni ISP.

Ti faccio una proposta: la Guida la conosci, lo "stile" anche, prepara un paragrafo (poi lo riformatto io) con tanto di foto sulla programmazione ISP della 1.0, prevedi la programmazione di micro standard e quella di un qualsiasi micro non previsto, sempre con foto sui collegamenti Arduino<->Breadboard; lo inserisco nella Guida a firma tua e con tanto di ringraziamenti nell'introduzione.

@ Leo: allargo la proposta anche a te, sempre che tu voglia, creati un capitolo (Word compatibile  :*) sulla programmazione delle Tiny-family, lo aggiungo alla Guida a tua firma. Il tuo stile è molto simile al mio quindi non devi fare stravolgimenti.
Tolgo la vecchia introduzione, quella con la "tiratina" a Banzi, e spiego lo scopo della Guida e indico chi ha collaborato con me alla sua stesura, riguardo i capitoli xxx. Implemento quanto avevamo messo a punto per il 328noP che sembra funzionare senza particolari problemi, aggiungo le nuove "scoperte" fatte post-Guida, chiarisco bene la storia dei "fuse Vs clock Vs ISP" e pubblico la nuova versione. Naturalmente nessuna esclusiva, quindi il tuo lavoro resterà anche su Gioblu e dovunque tu vorrai pubblicarlo.

@ Tutti: Se qualcuno ha idee per nuovi capitoli da implementare proponga; sia chiaro che l'argomento portante è la "Programmazione di microcontrollori ATMEL tramite Arduino", quindi non aggiungeremo materiale non inerente a questa tematica.

L'unica cosa che Vi chiedo è che inviandomi il Vs materiale mi autorizziate ad adattarlo al mio stile di scrittura e spiegazione, senza ovviamente modificare i contenuti tecnici, visto che comunque la Guida è a mio nome, pur lasciando ESCLUSIVAMENTE il Vostro nei rispettivi capitoli che mi invierete.

Se siete d'accordo mi contattate in MP e vi dò le necessarie indicazioni di stesura, se non lo siete NON è necessario che ne spieghiate i motivi, si resta com'è; vuol dire che per la parte IDE 1.0, appena possibile la farò io avvalendomi del vostro aiuto, come sempre, mentre la parte "Tiny" non la tocco in quanto esiste già su Gioblu l'eccellente lavoro fatto da Leo.
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

leo72

Non so se lo sai, ma da qualche giorno l'autore del core Tiny ha pubblicato la versione compatibile con l'IDE 1.0.
Alla luce di questo, potrei approfittarne ed aggiornare la mia guida per i Tiny per l'uso con la versione 1.0.

Finora non ho fatto il passaggio alla 1.0 per il solo motivo che tutte le lib non sono state ancora convertite e, conseguentemente, sono rimasto con la 0022 che a me funziona benissimo. Vedrò di attrezzarmi per i test in questa settimana, spero di produrre il materiale entro una decina di giorni.

Michele Menniti


Non so se lo sai, ma da qualche giorno l'autore del core Tiny ha pubblicato la versione compatibile con l'IDE 1.0.
Alla luce di questo, potrei approfittarne ed aggiornare la mia guida per i Tiny per l'uso con la versione 1.0.

Finora non ho fatto il passaggio alla 1.0 per il solo motivo che tutte le lib non sono state ancora convertite e, conseguentemente, sono rimasto con la 0022 che a me funziona benissimo. Vedrò di attrezzarmi per i test in questa settimana, spero di produrre il materiale entro una decina di giorni.

No, non lo sapevo, è una buona notizia, anche se io per ora resto scettico sul passaggio alla 1.0. Ma poi ha deciso qualcosa sui micro che "ci mancano" (Tiny 88 e 861)?
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

Go Up