Go Down

Topic: programmare il 644 ... ma come???? (Read 25 times) previous topic - next topic

Michele Menniti

Bene, con il vecchio bootloader di mighty sono riuscito finalmente a blinkare :D 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.
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

Ti contraddico  ;), non è basato sull'optiboot ma sul vecchio bootloader 2009.
C'è espressamente scritto nel sorgente:
Code: [Select]
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  ;)

leo72

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


leo72

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.

astrobeed

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.

Go Up