Salve ragazzi, sto completando il progetto della rivista Eletrronica in di luglio 2014 del robot solare con Arduino uno e nei post della sezione dedicata (robotica) viene messo il nuovo firmware aggiornato con estensione .hex.
Arduino non me lo carica ovviamente perché non riconosce tale file. Il firmware vecchio aveva 7 file da caricare tutti con estensione .ino mentre questo è un unico file con estensione .hex
Mi dite come faccio??? Sulla rete qualcuno utilizza avrdude, altri xloader ma non trovò una guida in italiano. Potreste aiutarmi??? Ve ne sarei molto grato.
Come caricare firmware .hex su arduino
Re: Come caricare firmware .hex su arduino
Buongiorno, trova il codice completo direttamente nella scheda prodotto della shield. Nello specifico, nel link seguente trova lo sketch http://www.futurashop.it/mowershieldfe- ... ershieldfe
-
- Messaggi: 11
- Iscritto il: 27/04/2016, 18:43
- Occupazione: Militare
- Home_Page: http://
- Commento: Hobby fai da te meccanica ed elettronica
- Compleanno: 05 lug 1962
Re: Come caricare firmware .hex su arduino
Ringrazio della risposta ma vorrei essere sicuro di una cosa. Lo sketch che trovo al link postato e che mi riporta al vs. sito dello Shop è quello aggiornato che correggeva alcuni bug come riportato nel forum sezione robotica nel 2014 Oppure è sempre quello della rivista del 2009??? Grazie.
Re: Come caricare firmware .hex su arduino
Ciao, purtroppo non posso esserti d'aiuto per il progetto specifico perché non lo conosco e questa sezione del forum si occupa di un'altra scheda (RandA).
Nel caso però tu volessi caricare su Arduino UNO il firmware binario in formato .hex in tuo possesso il comando da usare è simile al seguente:
Siccome anche l'IDE Arduino utilizza avrdude in realtà lo stai già usando senza saperlo e puoi verificare semplicemente il comando esatto da usare nel tuo caso (io sto usando l'IDE ultima versione v1.8.4 da Ubuntu Linux e installato in /opt/arduino-1.8.4/).
Devi solamente andare nel menu "File -> Preferences", poi nel tab "Settings" e spuntare (selezionare) la voce "upload" di fianco a "Show verbose output during:". Dopodiché prova a caricare con l'IDE Arduino un qualsiasi sketch .ino sul tuo Arduino UNO (io nell'esempio sopra ho caricato Blink.ino) e vedrai, nella console inferiore sotto il codice dello sketch, scorrere dei messaggi durante il caricamento ove puoi vedere il comando che ti ho indicato.
Dovrai solo sostituire nel comando il percorso ed il nome del file binario .hex che vuoi caricare (nel mio esempio è: /tmp/arduino_build_641517/Blink.ino.hex)
P.S. Se lanci avrdude solo con il parametro -? ti mostra tutti i parametri che puoi usare ed il loro significato (non dovresti aver bisogno di cambiarli a parte quello del file .hex perché l'IDE usa i parametri corretti e che per te funzionano e che corrispondono alla Board ed alla porta seriale che hai selezionato):
Nel caso però tu volessi caricare su Arduino UNO il firmware binario in formato .hex in tuo possesso il comando da usare è simile al seguente:
Codice: Seleziona tutto
/opt/arduino-1.8.4/hardware/tools/avr/bin/avrdude -C/opt/arduino-1.8.4/hardware/tools/avr/etc/avrdude.conf -v -patmega328p -carduino -P/dev/ttyACM0 -b115200 -D -Uflash:w:/tmp/arduino_build_641517/Blink.ino.hex:i
Devi solamente andare nel menu "File -> Preferences", poi nel tab "Settings" e spuntare (selezionare) la voce "upload" di fianco a "Show verbose output during:". Dopodiché prova a caricare con l'IDE Arduino un qualsiasi sketch .ino sul tuo Arduino UNO (io nell'esempio sopra ho caricato Blink.ino) e vedrai, nella console inferiore sotto il codice dello sketch, scorrere dei messaggi durante il caricamento ove puoi vedere il comando che ti ho indicato.
Dovrai solo sostituire nel comando il percorso ed il nome del file binario .hex che vuoi caricare (nel mio esempio è: /tmp/arduino_build_641517/Blink.ino.hex)
Codice: Seleziona tutto
Archiving built core (caching) in: /tmp/arduino_cache_215221/core/core_arduino_avr_uno_77ab679da1d5cba39880a1cc44badc16.a
Sketch uses 928 bytes (2%) of program storage space. Maximum is 32256 bytes.
Global variables use 9 bytes (0%) of dynamic memory, leaving 2039 bytes for local variables. Maximum is 2048 bytes.
/opt/arduino-1.8.4/hardware/tools/avr/bin/avrdude -C/opt/arduino-1.8.4/hardware/tools/avr/etc/avrdude.conf -v -patmega328p -carduino -P/dev/ttyACM0 -b115200 -D -Uflash:w:/tmp/arduino_build_641517/Blink.ino.hex:i
avrdude: Version 6.3, compiled on Jan 17 2017 at 11:00:16
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch
System wide configuration file is "/opt/arduino-1.8.4/hardware/tools/avr/etc/avrdude.conf"
User configuration file is "/home/user/.avrduderc"
User configuration file does not exist or is not a regular file, skipping
Using Port : /dev/ttyACM0
Using Programmer : arduino
Overriding Baud Rate : 115200
AVR Part : ATmega328P
Chip Erase delay : 9000 us
PAGEL : PD7
BS2 : PC2
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
eeprom 65 20 4 0 no 1024 4 0 3600 3600 0xff 0xff
flash 65 6 128 0 yes 32768 128 256 4500 4500 0xff 0xff
lfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
efuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
lock 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00
Programmer Type : Arduino
Description : Arduino
Hardware Version: 3
Firmware Version: 4.4
Vtarget : 0.3 V
Varef : 0.3 V
Oscillator : 28.800 kHz
SCK period : 3.3 us
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.00s
avrdude: Device signature = 0x1e950f (probably m328p)
avrdude: reading input file "/tmp/arduino_build_641517/Blink.ino.hex"
avrdude: writing flash (928 bytes):
Writing | ################################################## | 100% 0.16s
avrdude: 928 bytes of flash written
avrdude: verifying flash memory against /tmp/arduino_build_641517/Blink.ino.hex:
avrdude: load data flash data from input file /tmp/arduino_build_641517/Blink.ino.hex:
avrdude: input file /tmp/arduino_build_641517/Blink.ino.hex contains 928 bytes
avrdude: reading on-chip flash data:
Reading | ################################################## | 100% 0.13s
avrdude: verifying ...
avrdude: 928 bytes of flash verified
avrdude done. Thank you.
Codice: Seleziona tutto
/opt/arduino-1.8.4/hardware/tools/avr/bin/avrdude -?
Usage: avrdude [options]
Options:
-p <partno> Required. Specify AVR device.
-b <baudrate> Override RS-232 baud rate.
-B <bitclock> Specify JTAG/STK500v2 bit clock period (us).
-C <config-file> Specify location of configuration file.
-c <programmer> Specify programmer type.
-D Disable auto erase for flash memory
-i <delay> ISP Clock Delay [in microseconds]
-P <port> Specify connection port.
-F Override invalid signature check.
-e Perform a chip erase.
-O Perform RC oscillator calibration (see AVR053).
-U <memtype>:r|w|v:<filename>[:format]
Memory operation specification.
Multiple -U options are allowed, each request
is performed in the order specified.
-n Do not write anything to the device.
-V Do not verify.
-u Disable safemode, default when running from a script.
-s Silent safemode operation, will not ask you if
fuses should be changed back.
-t Enter terminal mode.
-E <exitspec>[,<exitspec>] List programmer exit specifications.
-x <extended_param> Pass <extended_param> to programmer.
-y Count # erase cycles in EEPROM.
-Y <number> Initialize erase cycle # in EEPROM.
-v Verbose output. -v -v for more.
-q Quell progress output. -q -q for less.
-l logfile Use logfile rather than stderr for diagnostics.
-? Display this usage.
avrdude version 6.3, URL: <http://savannah.nongnu.org/projects/avrdude/>
-
- Messaggi: 11
- Iscritto il: 27/04/2016, 18:43
- Occupazione: Militare
- Home_Page: http://
- Commento: Hobby fai da te meccanica ed elettronica
- Compleanno: 05 lug 1962
Re: Come caricare firmware .hex su arduino
Ti ringrazio dell'aiuto adesso stampo quello che mi hai scritto e con calma vedo il da farsi.ciao
-
- Messaggi: 1
- Iscritto il: 12/01/2023, 6:31
- Home_Page: http://
Re: Come caricare firmware .hex su arduino
If you have verbose logging on, you will see the exact command line command used to invoke AVRDude with all of its parameters when you use the IDE to upload a file. Copy this line and then just pop it into a command prompt box on Windows or a Terminal session on Linux.
https://routerlogin.ltd/
https://pikashow.ltd/
https://routerlogin.ltd/
https://pikashow.ltd/
-
- Messaggi: 1
- Iscritto il: 12/04/2024, 12:01
- Home_Page: http://
- Compleanno: 06 giu 1992
Re: Come caricare firmware .hex su arduino
Nel caso però tu volessi caricare su Arduino UNO il firmware binario in formato .hex in tuo possesso il comando da usare è simile al seguente:
http://cgqzrz.com
http://haoyyl.com
http://kington-sh.com
http://lovededicate.com
http://cgqzrz.com
http://haoyyl.com
http://kington-sh.com
http://lovededicate.com