Go Down

Topic: Pico85 SMD - La prima board Arduino compatibile di Gioblu Robotics (Read 18 times) previous topic - next topic

Testato

come onnisciente minimo minimo sono al 4 o 5 posto  :)

a me e' stato molto utile capire, e l'ho fatto testandolo, che i settaggi dei fuses erano inutili in certe condizioni, e visto che non e' un concetto molto conosciuto lo faccio presente quando ritengo sia utile farlo.
- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Michele Menniti


Boòni...  XD

sono ragazzi...si scherza.... :smiley-yell:
@ Testato: in questo caso non era utile :D

Quote

Cmq l'IDE non è che non lo può fare, semplicemente è stata impostata per non farlo.
Hanno unito la programmazione dei fuse insieme all'invio del bootloader. Questo perché l'IDE è nata per UN prodotto, Arduino, e questo prodotto ha hardware fisso.

Ma il bootloader è modificabile? esiste un "sorgente"? Si potrebbe modificare per il tiny o impresa è? :smiley-eek:
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

Testato

menny la mia frase non era rivolta a te, anche se ho usato un tuo quote per ribadire il concetto, ma a chi stava seguendo il discorso.
Di certo non vengo ad insegnare a te l'uso e l'utilizzo dei fuse, mi scuso se l'impressione e' stata quella.

per il bootloader, si, esiste il sorgente e lo si puo' modificare, Leo ne fece un'analisi poco tempo fa sul discorso del reset, ma qui secondo me non c'entra. E' l'IDE che dovrebbe essere modificato, ma a massimo probabilmente non interessa estendere il concetto di standalone senza bootloader
Essendo comunque un opensource si potrebbe ad esempio integrare la funzione in ArduOpen
- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Michele Menniti

#273
Oct 11, 2011, 10:26 pm Last Edit: Oct 11, 2011, 10:30 pm by menniti Reason: 1

menny la mia frase non era rivolta a te, anche se ho usato un tuo quote per ribadire il concetto, ma a chi stava seguendo il discorso.
Di certo non vengo ad insegnare a te l'uso e l'utilizzo dei fuse, mi scuso se l'impressione e' stata quella.

min...a! stasera tutti si scusano con me, probabilmente appaio più acido del solito :smiley-sad-blue: meglio che faccio pausa-camomilla; posso capire i nuovi, ma tu mi conosci, quando mai tiro coltellate sul serio? magari a ferire, ma mai mortali :D Se la metti così allora scusami su se ti sono sembrato aggressivo :smiley-red:

Quote

per il bootloader, si, esiste il sorgente e lo si puo' modificare, Leo ne fece un'analisi poco tempo fa sul discorso del reset, ma qui secondo me non c'entra. E' l'IDE che dovrebbe essere modificato, ma a massimo probabilmente non interessa estendere il concetto di standalone senza bootloader
Essendo comunque un opensource si potrebbe ad esempio integrare la funzione in ArduOpen

il mio ragionamento si basa sul fatto che inviando il bootloader l'IDE programma i fuse (non scendiamo nei dettagli, prendiamo per buona la frase, anche se sbagliata), se fosse possibile modificare il bootloader in modo da adattarlo all'hardware del tiny funzionaerebbe, o no? (tanto per procurare lavoro a Leo dopo l'RTCsw :smiley-mr-green:)
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

E' come dice Testato.
Se vuoi vedere il sorgente vai in /arduino-0022/hardware/arduino/bootloaders/optiboot
Lì c'è il sorgente e lo script per ricompilarlo se gli apporti delle modifiche.
Il problema è che quel bootloader è stato scritto per l'Atmega328/2560 e per lavorare con l'Atmega8U2.

Michele Menniti


E' come dice Testato.
Se vuoi vedere il sorgente vai in /arduino-0022/hardware/arduino/bootloaders/optiboot
Lì c'è il sorgente e lo script per ricompilarlo se gli apporti delle modifiche.
Il problema è che quel bootloader è stato scritto per l'Atmega328/2560 e per lavorare con l'Atmega8U2.

Lo so, dell'8u2 non ce ne frega niente, mica dobbiamo montare il tiny sull'Arduino o interfacciarlo al PC, a noi servirebbe solo per programmare i fuse, poi si ci schiaffa su lo sketch, sempre con ISP, e addio al bootloader. Si tratta di capire quanta roba va "adeguata" per passare dal 328 al tiny, comunque siamo sul puramente teorico, io non saprei nemmeno se il file si legge dall'alto verso il basso o viceversa :smiley-eek:
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

Testato

pace con i due indici incrociati, come fanno i bimbi  :)
- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Michele Menniti

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

In teoria puoi fare un bootloader con un bel jump alla prima locazione della flash e far sì che avvii direttamente lo sketch dell'utente. Ma così comunque consumi una parte di memoria per il bootloader. Inutile.

Michele Menniti


In teoria puoi fare un bootloader con un bel jump alla prima locazione della flash e far sì che avvii direttamente lo sketch dell'utente. Ma così comunque consumi una parte di memoria per il bootloader. Inutile.

Forse non capisco cosa mi stai spiegando, io il bl lo farei solo per avere la possibilità di programmare i fuse, poi sul tiny ci metto lo sketch via ISP e addio BL, che mi frega di come dovrebbe funzionare se lo abolisco?
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

Allora si torna all'uso di uno di quei bootloader farlocchi presenti nel core Tiny... ma si torna alla questione che qualcosa ci dev'essere che li fa riconoscere come "patacche" dato che né a me né a te è riuscito usarli.

Michele Menniti

Ecco perché pensavo di partire da un bl sicuramente funzionante come l'optiboot e poi trasformarlo in un qualcosa compatibile con i registri del tiny, moooolto più facile a dirsi che a farsi, lo so, ma come ho già detto il discorso è puramente teorico.
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

Code: [Select]
void main() {
 __asm__ __volatile__ (
 "clr r30\n"
 "clr r31\n"
 "ijmp\n" );
}


Secondo me funziona alla grande  XD

Michele Menniti


Code: [Select]
void main() {
 __asm__ __volatile__ (
 "clr r30\n"
 "clr r31\n"
 "ijmp\n" );
}


Secondo me funziona alla grande  XD

questa cos'è? la schifezza farlocca di cui stiamo parlando?
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

Esatto. In pratica si compila questo file che altro non dice al micro che di saltare all'indirizzo $0000 che è quello di inizio della Flash e di inizio del programma dell'utente  :P
Cmq questa soluzione non mi piace. Ci vorrebbe Brainbooster che "spippolasse" un po' su ArduOpen e mettesse l'opzione per flashare i fuse senza toccare il resto. Ma Brain ultimamente si è dato alla macchia.

Go Up