Pages: 1 ... 19 20 [21] 22 23 ... 25   Go Down
Author Topic: programmare il 644 ... ma come????  (Read 15587 times)
0 Members and 1 Guest are viewing this topic.
Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 410
Posts: 11973
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Bene, con il vecchio bootloader di mighty sono riuscito finalmente a blinkare smiley-grin il 1284P, ma confermo la necessità del C da 100nF in serie al DTR dell'FT232RL ed inoltre ho dovuto comunque mettere una R da 220kohm in serie al tx del Convertitore, quindi sull'rx del micro. Con 120kohm dava segni di vita ma comunque dava un errore, sono saltato direttamente a 220kohm, tanto il valore esatto non ha molta importanza. E' importante che la tecnica funzioni, e questa manovra è la conferma che è come dice Astro, c'è un problema di bootloader; ora appena lui riuscirà a mantenere l'impegno e fornircene uno (o quantomeno le spiegazioni per modificare quello attuale) si dovrebbe riuscire tutti a programmare senza alcuna R o C, insomma con i pin tx/rx liberi, tutt'al più le classiche R da 1k in serie ai due segnali.
Anche questo BL è basato sull'optiboot, nella cartella ci sono anche le board Mighty, che però sono basate sul vecchio bootloader, si evince facilmente dai percorsi e dalla memoria riservata (2k); c'è anche la bobuino ma questa è basata sull'optiboot, infatti la memoria riservata, così come per la versione usata da me, è di 1k.
Logged

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

Global Moderator
Italy
Online Online
Brattain Member
*****
Karma: 312
Posts: 21604
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ti contraddico  smiley-wink, non è basato sull'optiboot ma sul vecchio bootloader 2009.
C'è espressamente scritto nel sorgente:
Code:
based on stk500boot.c

Se guardi il sorgente del bootloader contenuto nella cartella /bootloader/atmega vedrai infatti che è sostanzialmente lo stesso con l'aggiunta del supporto per il 1284  smiley-wink
Logged


Global Moderator
Italy
Online Online
Brattain Member
*****
Karma: 312
Posts: 21604
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

L'ho voluto provare anch'io. Risultato: negativo.

Non riesco a caricare nessuno sketch, nonostante il bootloader risponda correttamente al reset (vedo il lampeggio del led).
Ho provato con:
1) C da 100 nF in serie sulla linea di reset (proveniente dal pin RST dell'Arduino)
2) senza detto C
3) con R da 175K in serie sul pin RX0 del micro
4) senza detta R
5) facendo diverse combinazioni fra C ed R

Logged


Global Moderator
Italy
Online Online
Brattain Member
*****
Karma: 312
Posts: 21604
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Errata corrige!
Avevo fatto una ca**ata io.
Mi ero dimenticato di mettere la velocità a 57600 nella nuova voce del file boards.txt.

Confermo quindi che con il bootloader standard riesco a programmare il chip. Aggiungo anche che riesco a farlo SENZA nessun componente aggiuntivo sulla linea che dal pin RX dell'Arduino va al pin RX0 del 1284P.
Quindi in sostanza usando solo la R da 1K che c'è in serie sulla scheda. Ottimo, ottimo.
Logged


Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9185
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Sono sempre molto di fretta, vi spiego brevemente dove sta il problema, i bootloader che state utilizzando sono pensati per il 328 e similari, il 644/1284 richiede delle tempistiche diverse, va usato il bootloader della Mega2560 (decisamente migliore del optiboot e si può trasferire a 240 kbps, in complenso occupa più spazio nella flash) con alcune piccole modifiche.
Spero domani di avere più tempo per entrare nei dettagli, io ho il bootloader sicuramente funzionante per il 1284, devo inserire anche il 644 e ricompilarlo per questo micro così ve lo passo già pronto all'uso, ovviamente anche il relativo sorgente.
Logged

Global Moderator
Italy
Online Online
Brattain Member
*****
Karma: 312
Posts: 21604
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Astro, grazie dell'intervento.
Il bootloader "mighy" è basato sul bootloader standard stk500 usato per le vecchie 10000/2009/Mega.
Con questo funziona correttamente senza ammennicoli sulle linee di trasmissione (almeno per me) però, come dici tu, la velocità è limitata a 57600.

Proverò a spippolare con il bootloader della mega (skt500v2)  smiley-lol
Logged


Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 410
Posts: 11973
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Grande Astro, così ci leviamo di torno tutte ste cartelle che non ne posso più, anche se credo che comunque il core dobbiamo mantenerlo no? così come il pins_Arduino.h, almeno io che ho la 1.0.1 no?
Va bene, al dunque mi darete le relative istruzioni in modo che si possa sintetizzare al minimo ogni aggiunta all'IDE. smiley

@ Leo: il mio ragionamento si basava sul nome "optiboot_atmega1284p.hex" e sull'occupazione di memoria (1k), visto che certamente quello della 2009 se ne prende 1,5K e quindi 2k, però mi fido di ciò che dici, ci mancherebbe; ciò che dice Astro conferma i miei dubbi di sempre, sulle temporizzazioni del "dialogo" e ulteriore conferma è che comunque in ogni situazione il tuo 1284 si comporta meglio dei miei smiley-confuse Invece non capisco questa cosa della velocità, da sempre io non ho mai fatto caso a questo parametro, più che convinto che venisse bellamente ignorato ed anche in questo frangente ho usato la board di mighty con bootloader 16MHz e ora vedo che il parametro è 115200; poi tu stai parlando di "bootloader standard", ma ti stai riferendo alla versione presente nella cartella "standard"? perché io invece sto usando quello della cartella optiboot, così come previsto dalla board.
Logged

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

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9185
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Grande Astro, così ci leviamo di torno tutte ste cartelle che non ne posso più, anche se credo che comunque il core dobbiamo mantenerlo no? così come il pins_Arduino.h, almeno io che ho la 1.0.1 no?
Va bene, al dunque mi darete le relative istruzioni in modo che si possa sintetizzare al minimo ogni aggiunta all'IDE. smiley

Il core non ha nulla a che vedere con il Bootloader, sono due cose distinte, il primo entra in funzione subito dopo il reset e usa i parametri impostati al suo interno e non quelli scritti nel file boards.txt, non appena il bootloader termina il suo lavoro entra in gioco il discorso core che riguarda solo la compilazione dello sketch.
Logged

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 410
Posts: 11973
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

ok, quindi io ho le tre cartelle attuali: cores, variants e bootloaders, devo svuotare la sola bootloaders per metterci i file che fornirai tu, giusto?
Logged

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

Global Moderator
Italy
Online Online
Brattain Member
*****
Karma: 312
Posts: 21604
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

@ Leo: il mio ragionamento si basava sul nome "optiboot_atmega1284p.hex" e sull'occupazione di memoria (1k), visto che certamente quello della 2009 se ne prende 1,5K e quindi 2k, però mi fido di ciò che dici, ci mancherebbe;
Beh, devi anche pensare che sull'Atmega1284 i tagli di memoria riservabili per il bootloader sono 1024/2048/4096/8192 (parlo di byte, non di word) mentre sull'Atmega328 sono 512/1024/2048/4096. Quindi anche con l'Optiboot sui 1284 meno di 1K non si può proteggere.

Quote
ciò che dice Astro conferma i miei dubbi di sempre, sulle temporizzazioni del "dialogo" e ulteriore conferma è che comunque in ogni situazione il tuo 1284 si comporta meglio dei miei smiley-confuse Invece non capisco questa cosa della velocità, da sempre io non ho mai fatto caso a questo parametro, più che convinto che venisse bellamente ignorato ed anche in questo frangente ho usato la board di mighty con bootloader 16MHz e ora vedo che il parametro è 115200; poi tu stai parlando di "bootloader standard", ma ti stai riferendo alla versione presente nella cartella "standard"? perché io invece sto usando quello della cartella optiboot, così come previsto dalla board.
Se apri il pacchetto mightyhome trovi dentro alla cartella /bootloaders 2 ulteriori cartelle: optiboot e standard.
In optiboot c'è il bootloader Optiboot 4.5 modificato da maniacbug, mentre in standard c'è il bootloader derivato da quello della vecchia 2009.
Se vedi bene nel file boards.txt contenuto nel pacchetto mightyhome, la scheda "Original Mighty" usa il bootloader "standard" mentre  sia la Mighty 1284 che la Bobduino usando il bootloader "optiboot".
Attento quindi a quello che hai usato.
Logged


Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9185
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

devo svuotare la sola bootloaders per metterci i file che fornirai tu, giusto?

Yes.

Logged

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 410
Posts: 11973
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

devo svuotare la sola bootloaders per metterci i file che fornirai tu, giusto?
Yes.
optiboot, anzi Optimum!! smiley-mr-green

@ Leo: a me scappa da ridere a questo punto smiley-grin io ho usato la prima board del file "Mighty 1284p 16MHz using Optiboot" che lavora a 115200 e usa "optiboot_atmega1284p.hex" che si trova in "optiboot", quindi è confermato che ho fatto la prova con il bootloader derivato dall'optiboot, come pensavo, infatti la memoria impostata è 130048, quindi riserva 1k, i conti tornano se non per il fatto che in questo caso a me il 1284P funziona con la R da 220K. Allora prima di andarmene faccio al volo una prova con la "Original Mighty 1284p 16MHz", cambio il bl e vediamo che succede smiley-sweat

EDIT: prova fatta, ora posso usare la R da 120k, ergo lascerei il bl derivato dall'optiboot, visto che una R vale l'altra, mentre l'optiboot mi fa risparmiare 1k di flash.

Leo se proprio vuoi spippolare guardati la differenza tra questo optiboot e quello che stai usando tu, magari scovi il motivo per il quale a voi funziona ed a me no e magari risolvi pure. Aspettando Astro.......
« Last Edit: January 27, 2013, 01:46:50 pm by Michele Menniti » Logged

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

Torino
Offline Offline
God Member
*****
Karma: 2
Posts: 753
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bene.....ho seguito questi ultimi post e pare proprio di essere arrivati,grazie alla collaborazione di astro,alla risoluzione dei problemi.
Purtroppo non posso essere di alcun aiuto in quanto questo genere di cose sono ancora un po troppo complicate per me,quindi attendo e seguo silenzioso.  smiley
Logged

Global Moderator
Italy
Online Online
Brattain Member
*****
Karma: 312
Posts: 21604
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

@ Leo: a me scappa da ridere a questo punto smiley-grin io ho usato la prima board del file "Mighty 1284p 16MHz using Optiboot" che lavora a 115200 e usa "optiboot_atmega1284p.hex" che si trova in "optiboot", quindi è confermato che ho fatto la prova con il bootloader derivato dall'optiboot, come pensavo, infatti la memoria impostata è 130048, quindi riserva 1k, i conti tornano se non per il fatto che in questo caso a me il 1284P funziona con la R da 220K. Allora prima di andarmene faccio al volo una prova con la "Original Mighty 1284p 16MHz", cambio il bl e vediamo che succede smiley-sweat

EDIT: prova fatta, ora posso usare la R da 120k, ergo lascerei il bl derivato dall'optiboot, visto che una R vale l'altra, mentre l'optiboot mi fa risparmiare 1k di flash.
Senz'altro il passaggio all'uso dell'Optiboot è stato giustificato dal fatto di dimezzare il consumo di Flash rispetto al bootloader standard.


Quote
Leo se proprio vuoi spippolare guardati la differenza tra questo optiboot e quello che stai usando tu, magari scovi il motivo per il quale a voi funziona ed a me no e magari risolvi pure. Aspettando Astro.......
Sono 2 bootloader completamente differenti. Anche il bootloader della Mega è diverso (anche se simile a quello "original mighty"), però questo occupa 4 kB di Flash... Boh... aspetto cos'ha elaborato astro e poi vediamo come si casca  smiley-wink
Logged


Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 410
Posts: 11973
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Leo, ma io sto parlando delle differenze tra i due optiboot1284 di mighty: quello che stai usando tu attualmente e quello che mi hai linkato e che ho scaricato per le mie prove; in pratica il tuo optiboot dovrebbe essere la versione aggiornata del mio attuale, ecco perché ti consigliavo di guardare le differenze.
Non ti avrei chiesto un lavoro di confronto con quello della MEGA visto che Astro ha detto che lo fornirà lui funzionante sia per 644 che per 1284.  smiley

@ tonid: al momento ciò che siamo arrivati a fare non è niente di più dell'altro giorno, visto che io ieri, su suggerimento di Leo, ho testato due versioni precedenti di bootloader per 1284: una basata sempre sull'optiboot e l'altra basata sul vecchio bl della 2009. Astro ci ha spiegato che le problematiche derivano da tempistiche differenti tra il 328 ed i 644/1284 e di conseguenza serve un bl derivante da quello della MEGA2560 e non da quello della UNO. Ci ha promesso che ne avrebbe ricompilato una sua versione sie per 644 che per 1284 e ciò risolverà tutti i nostri problemi e ci permetterà di lavorare senza R, C e quant'altro.

Siamo in dolce e trepida attesa...... smiley-kiss
Logged

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

Pages: 1 ... 19 20 [21] 22 23 ... 25   Go Up
Jump to: