Show Posts
Pages: [1] 2 3 ... 24
1  International / Hardware / Re: Arduino mega 20mhz overclock on: September 05, 2014, 10:15:25 am
Hai provato il rifacimento del mio?
2  International / Hardware / Re: Arduino mega 20mhz overclock on: September 05, 2014, 05:12:44 am
Ciao,
effettivamente il Makefile per il bootloader stk500v2 distribuito con Arduino 1.0.5 ha un problema con i compilatori nuovi.
Inserendo le modifiche al Makefile, che ho descritto nel post con il download del file hex, si carica.
Ho ricompilato il bootloader e l'ho caricato su una MegaAdk senza problemi, ho provato sia l'originale a 16Mhz che quello modificato a 20Mhz.
Ho anche tentato un upload con il bootloder a 20Mhz con quarzo a 16Mhz e baudrate a 92160 ma ovviamente non è possibile impostare la seriale a quella velocità e non funziona.
3  International / Hardware / Re: Arduino mega 20mhz overclock on: September 03, 2014, 11:55:43 am
Che programmatore hai usato?
Hai programmato il chip giusto, te lo chiedo perché proprio l'altro giorno per la fretta ho programmato il chip usb con il botloader...
Prima di sostituire il quarzo hai lasciato nel micro uno sketch tipo blink che ti assicuri che tutto funziona dal lato hardware?
4  International / Hardware / Re: Arduino mega 20mhz overclock on: August 30, 2014, 11:36:52 am
E' sicuramente la soluzione migliore, basta aggiungere la Arduino Mega 20Mhz nel board.txt
5  International / Hardware / Re: Arduino mega 20mhz overclock on: August 30, 2014, 11:19:52 am
Se hai problemi a compilarlo usa quello che ho allegato io a uno dei messaggi precedenti.
6  International / Hardware / Re: Arduino mega 20mhz overclock on: August 29, 2014, 10:01:14 am
Ma che sistema operativo usi?
Apri un terminale vai directory che ti ho scritto, poi digiti i comandi.
La modifica della memoria va fatta.
7  International / Hardware / Re: Arduino mega 20mhz overclock on: August 29, 2014, 03:06:44 am
Quote
Come fare e in cosa consiste il makeclean

Per compilare il bootloader per la mega devi:
  • andare nella directory /Arduino/Contents/Resources/Java/hardware/arduino/bootloaders/stk500v2/
  • aggiungere le righe al file board.txt
  • dare il comado make clean
  • dare il comado make mega2560_20MHz

nel file stk500boot_v2_mega2560_20MHz.hex trovi il bootloader a 20Mhz

Io l'ho fatto sul Mac
8  International / Hardware / Re: Arduino mega 20mhz overclock on: August 28, 2014, 10:07:47 am
Ma che versione di Arduino usi?
Io ho fatto tutto con la 1.0.5

Nel board.txt metti aggiungi
Quote
##############################################################

mega2560_20MHz.name=Arduino Mega 2560 or Mega ADK 20Mhz

mega2560_20MHz.upload.protocol=wiring
mega2560_20MHz.upload.maximum_size=258048
mega2560_20MHz.upload.speed=115200

mega2560_20MHz.bootloader.low_fuses=0xFF
mega2560_20MHz.bootloader.high_fuses=0xD8
mega2560_20MHz.bootloader.extended_fuses=0xFD
mega2560_20MHz.bootloader.path=stk500v2
mega2560_20MHz.bootloader.file=stk500boot_v2_mega2560_20MHz.hex
mega2560_20MHz.bootloader.unlock_bits=0x3F
mega2560_20MHz.bootloader.lock_bits=0x0F

mega2560_20MHz.build.mcu=atmega2560
mega2560_20MHz.build.f_cpu=20000000L
mega2560_20MHz.build.core=arduino
mega2560_20MHz.build.variant=mega

EDIT: ho aggiunto un Makefile con le modifiche per abilitare le ottimizzazioni necessarie con gli ultimi compilatori.
Con il makefile originale il codice generato è troppo grande e non viene caricato.
Vedete https://code.google.com/p/arduino/issues/detail?id=822, alcune modifiche sono state inserite ma ne manca una.
9  International / Hardware / Re: Arduino mega 20mhz overclock on: August 28, 2014, 09:50:53 am
Ho ricompilato il bootloader stk500v2 che è quello delle mega2560 aggiungendo queste linee nel makefile:

Quote
mega2560_20MHz:   MCU = atmega2560
mega2560_20MHz:   F_CPU = 20000000
mega2560_20MHz:   BOOTLOADER_ADDRESS = 3E000
mega2560_20MHz:   CFLAGS += -D_MEGA_BOARD_
mega2560_20MHz:   begin gccversion sizebefore build sizeafter end
         mv $(TARGET).hex stk500boot_v2_mega2560_20MHz.hex

prima di ricompilare bisogna fare un make clean per essere sicuri che ricompili veramente.
10  International / Hardware / Re: Arduino mega 20mhz overclock on: August 28, 2014, 08:47:40 am
Ho aggiunto questi target al Makefile dell'opiboot standard di Arduino

atmega328_20MHz: MCU_TARGET = atmega328p
atmega328_20MHz: CFLAGS += '-DLED_START_FLASHES=3' '-DBAUD_RATE=115200'
atmega328_20MHz: AVR_FREQ = 20000000L
atmega328_20MHz: LDSECTIONS  = -Wl,--section-start=.text=0x7e00 -Wl,--section-start=.version=0x7ffe
atmega328_20MHz: $(PROGRAM)_atmega328_20MHz.hex
atmega328_20MHz: $(PROGRAM)_atmega328_20MHz.lst

atmega328_isp_20MHz: atmega328_20MHz
atmega328_isp_20MHz: TARGET = atmega328_20MHz
atmega328_isp_20MHz: MCU_TARGET = atmega328p
# 512 byte boot, SPIEN
atmega328_isp_20MHz: HFUSE = DE
# Low power xtal (16MHz) 16KCK/14CK+65ms
atmega328_isp_20MHz: LFUSE = FF
# 2.7V brownout
atmega328_isp_20MHz: EFUSE = 05
atmega328_isp_20MHz: isp

ho reso eseguibile omake e fatto
 ./omake  atmega328_20MHz
et volià il botloader a 20Mhz
chi lo prova?
11  International / Hardware / Re: Arduino mega 20mhz overclock on: August 28, 2014, 04:21:49 am
Quote
Riprogrammo il bootloader via icsp ( senza alcuna modifica giusto ?)

Mi sa che dovrai ricompilarti anche quello, modificando la frequenza.
Però magari puoi provare ad usare quello standard a 144000 bps:
115200 * 20 /16 = 144000
e poi cambi
mega2560.upload.speed=115200
in
mega2560.upload.speed=144000
nel file di configurazione.
Se funziona hai risolto, dubito, ma tentare...
12  International / Generale / Re: rxtx leggere porta seriale da java on: August 20, 2014, 04:03:33 am
Qui male
Code:
while(!stato){
                 String buffer = serialPort.readString();//Read 10 bytes from serial port
                 if(buffer==null){stato=false;}
                 if(buffer!=null){stato=true;System.out.println(buffer); }
                 
            }
meglio
Code:
String buffer;
while(true){
        String buffer = serialPort.readString();
        if (buffer!=null) //bisogna vedere cosa restituisce quando non ci sono caratteri
        {System.out.println(buffer); }
non ho provato il codice!
nello sketch arduiniano per usare l'altra porta devi scrivere
Code:
void setup() {
  Serial1.begin(9600);
}

void loop() {
 
  Serial1.println("aaaaa");delay(100);
  Serial1.println("bbbbb");delay(100);
    Serial1.println("ccccc");delay(100);
  Serial1.println("ddddd");delay(100);
    Serial1.println("eeeee");delay(100);
  Serial1.println("fffff");  delay(100);
}
così usi l'altra seriale non quella di programmazione se non va prova con 2 3 dopo il Serial
Ho letto la documentazione della Due ma qualcosa non va.
13  International / Generale / Re: rxtx leggere porta seriale da java on: August 20, 2014, 03:29:02 am
Ho letto che la due ha due usb quella per programmare e un altra, prova ad usare la seconda per dialogare con il programma, sicuramente non si resetta.
14  International / Generale / Re: rxtx leggere porta seriale da java on: August 19, 2014, 02:51:18 pm
La differenza tra
readString(10)
e
readString()
penso sia che la prima si blocca e attende 10 caratteri poi prosegue, la seconda ritorna null se non ci sono caratteri e tutti i caratteri se ce ne sono, dovresti mettere una if e stampare la stringa solo se non è null

Per evitare il reset dell'arduino leva il controllo di flusso hardware, se no il pin DTR ti resetta l'arduino.
Vedi Software settings to disable the DTR pin on the host: http://playground.arduino.cc/Main/DisablingAutoResetOnSerialConnection
15  International / Generale / Re: rxtx leggere porta seriale da java on: August 19, 2014, 01:02:01 pm
Per leggere tutti i caratteri disponibili usa
readString()
vedi http://java-simple-serial-connector.googlecode.com/svn/trunk/additional_content/javadoc/0.8/jssc/SerialPort.html
se definisci un protocollo ci puoi mettere un fine riga standard tipo ; o puoi cercare il carattere di ritorno a capo.
Quando lo trovi decodifichi il comado completo.
Pages: [1] 2 3 ... 24