Go Down

Topic: [WIN] Aggiornam. compilatore IDE 0022-0023-1.0 all'ULTIMA VERSIONE ATMEL (Read 59798 times) previous topic - next topic

astrobeed


Se quanto hai appena spiegato funziona sul serio avresti risolto il problema degli sketch over 64K che afflige le versioni 4.xx.


Non facciamo confusione tra avrdude e avrgcc, sono due cose diverse con finalità diverse, il primo è solo un programma che comanda un programmatore hardware, non gli interessa nulla se l'hex è più o meno grande se la flash del micro in oggetto è in grado di contenerlo.
Il limite di 64k, anzi di 128k, ovvero 64 kword visto che gli AVR usano tale segmentazione per il programma, e di 64k per i dati posti nella flash, è dovuto a avrgcc, è lui ad essere limitato, per i 128k di programma, e bacato per i 64k dei dati.
Detto in altri termini, se con l'attuale versione di Arduino, non importa se 0023 o 1.0, compili un programma per l'ATmega2560 che supera i 128 kbyte per lo sketch, o a dati scritti nella flash oltre i 64k, non funziona sia che lo carichi tramite avrdude e bootloader sia che lo carichi in modo ISP con un vero programmatore hardware, p.e. AVRISP MKII o Dragon.


BrainBooster

si, è vero quoto astrobeed.
quello che ho fatto è solo disabilitare il blocco del sw che ti ferma quando non legge la signature, non altro.

Michele Menniti

BB, stiamo parlando d'altro :~ rispondi alla mia domanda precedente per favore  ;)

Ok, chiaro il discorso, comunque a questo punto abbiamo il compilatore 4.3.3 e l'AVRDUDE 5.1, è già un bel passo avanti  :D
Quando poi completerai l'upgrade al compilatore 5.xx saranno risolti praticamente tutti i problemi e limitazioni derivanti dal software attuale, o no?
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

BrainBooster

@Menniti lascia il resto così com'è , copia solo l'eseguibile

Però nessuno mi ha risposto in merito ai miei dubbi.
Da questo link http://www.atmel.com/tools/ATMELAVRTOOLCHAIN3_2_3FORLINUX.aspx ho scaricato gli ultimi due. Questi contengono, il primo delle patch che riguardano tutte avr32, il secondo sono dei sorgenti che contengono solo file di intestazione.

Tutte le patch per gcc e binutils si riferiscono ad avr32 e anche guardando dentro non c'è nulla per  avr mega 8 bit ma neanche per attiny. Ora io vorrei capire cosa ha di diverso questa benedetta toolchain di Atmel che non c'è nella versione presente nei repo di avr-gcc, avrlibc ecc.

@Leo quel link non l'ho guardato ancora, proverò a dargli una occhiata anche per capire cosa scarica e da dove.

Tu dicevi che non sai dove mettere i file, provo a darti una dritta sulla base delle mie esperienze. dpkg dovrebbe avere una opzione per vedere la lista dei file (compresi i percorsi) presenti in un pacchetto, rpm ad esempio c'è l'ha, basta rpm -qlp nomepacchetto.rpm oppure se è installato basta rpm -ql nomepachetto (es rpm -ql inkscape). Così dovresti essere in grado di capire dove vanno i file appartenenti alle binutils ecc.

Ma il problema principale risiede in arduino ide che dovrà usare i strumenti "nuovi" prendendoli da un percorso ben definito, come fare non lo so.

Ora se Astro mi illumina, visto che lui è già avanti provo anche io a raggiungerlo, sempre che non sia irrangiungibile  :P

Ciao.



AvrDudeQui front end per avrdude https://gitorious.org/avrdudequi/pages/Home

Michele Menniti


@Menniti lascia il resto così com'è , copia solo l'eseguibile

Non funziona è si è pure incazzato con te :smiley-eek-blue:
Code: [Select]
Yikes!  Invalid device signature.
         Double check connections and try again, BB!

Giuro che quel BB non l'ho scritto io ma è uscito da solo :smiley-roll-sweat:
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

BrainBooster

#81
Mar 18, 2012, 05:53 pm Last Edit: Mar 18, 2012, 06:01 pm by BrainBooster Reason: 1
@Menniti aspetta che controllo... (il BB è la mia signature ;) )
secondomè astro è arrivato al punto che ha fatto iniziare la reazione a catena fra compilatore ide e core :D
e sta compattendo con le variabili "punned" e l'aliasing...
credo che per aggiornare il toolchain con quella di atmel la cosa sia un pò più complicata che con winavr, e forse c'è da modificare anche le istruzioni di compilazione che l'ide manda a gcc, ma lasciamo che Astrobeed faccia ancora una volta la magia :)

astrobeed


http://www.atmel.com/tools/ATMELAVRTOOLCHAIN3_2_3FORLINUX.aspx ho scaricato gli ultimi due. Questi contengono, il primo delle patch che riguardano tutte avr32, il secondo sono dei sorgenti che contengono solo file di intestazione.


Vi rammento che stiamo parlando di come aggiornare il compilatore di Arduino per Windows, non per Linux, io sto lavorando sulla toolchain Atmel 3.2.3 versione Windows, e come ho già detto il trapianto non è una cosa indolore da fare.
Oggi ho fatto altri test e sono venuti fuori due nuovi problemi, uno già risolto e uno ancora da risolvere, però dovrei essere molto vicino a mettere la parola fine e rilasciare la procedura per questo aggiornamento che dovrebbe risolvere alla radice tutti i problemi di compilatore che affliggono Arduino.

BrainBooster


Michele Menniti


@Menniti hai posta
non c'è bisogno che mi avvisi, ci pensa outlook  ;)
questo è l'errore completo (mi pare identico al precedente):
Code: [Select]
Binary sketch size: 736 bytes (of a 2048 byte maximum)
avrdude: Yikes!  Invalid device signature.
         Double check connections and try again, BB! ! ! not this time ;)or use -F to override
         this check.

avrdude: Expected signature for ATtiny2313 is 1E 91 0A
         Double check chip, or use -F to override this check.

mi fai una cortesia? prova una versione con signature FF FF FF che è proprio quella che "leggo" nel mio tiny2313.
Anzi mi viene il dubbio che forse stai lavorando sul 4313, che ho erroneamente citato prima :~
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

BrainBooster

no, io non posso fare prove perchè al momento non ho mcu in quello stato.
Prova a mandarlo in esecuzione con il -F che se così funziona metto l'auto-F in caso di signature zappata.

Michele Menniti


no, io non posso fare prove perchè al momento non ho mcu in quello stato.
Prova a mandarlo in esecuzione con il -F che se così funziona metto l'auto-F in caso di signature zappata.

intendevo dire di inserire una signature FF FF FF, non di fare la prova tu.
il -F non posso provarlo perché sto usando IDE.
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


Il limite di 64k, anzi di 128k, ovvero 64 kword visto che gli AVR usano tale segmentazione per il programma, e di 64k per i dati posti nella flash, è dovuto a avrgcc, è lui ad essere limitato, per i 128k di programma, e bacato per i 64k dei dati.
Detto in altri termini, se con l'attuale versione di Arduino, non importa se 0023 o 1.0, compili un programma per l'ATmega2560 che supera i 128 kbyte per lo sketch, o a dati scritti nella flash oltre i 64k, non funziona sia che lo carichi tramite avrdude e bootloader sia che lo carichi in modo ISP con un vero programmatore hardware, p.e. AVRISP MKII o Dragon.

In un vecchio post tu specificasti meglio questa cosa. Le vecchie versioni di avr-gcc distribuite con l'IDE versione Windows hanno il limite a 64 KB di Flash, le nuove hanno il limite spostato a 128KB (che sono i 64K di word che citi ora) mentre le versioni distribuite nella toolchain di Atmel hanno il limite ulteriormente spostato a 256 KB.
http://arduino.cc/forum/index.php?action=printpage;topic=91596.0
Confermi?

@Mauro:
il link a cui mi riferisco io crea la toolchain completa in una cartella denominata avr, che ha un albero identico alla versione della toolchain inserita nell'IDE versione Windows. Comunque penso sia più utile aprire un thread per soli Pinguini, in modo da non mescolare i problemi della toolchain Linux con i problemi che stanno affrontando in questo thread. Ora provvedo.

BrainBooster

@Menniti sto ricompilando laversione "cieca" di avrdude, dovrebbe scrivere anche sulle pietre :D solo qualche minuto di pazienza... :)

Michele Menniti

ok, aspetto giusto per fare la prova, poi rientro a casa, ho un mare di lavoro da fare stasera :smiley-sweat:
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