Sbaglio qualcosa con arduino 1.0?

Buon giorno,
è da un pò che non "giocavo con Arduino" ed oggi per uan cosatta lho ripreso in mano, ma sorpresa il banalissimo programmino:

void setup()
{
pinMode (10,OUTPUT);
}

void loop()
{
digitalWrite (10,HIGH);
delay (1000);
digitalWrite (10,LOW);
delay (2000);
}

non funziona, o meglio lo compila senza errori, ma di fatto il led NON lampeggia.
Ora sto sbagliando alla grande qualcosa, o (io) ho qualche problema sul PC ?
uso arduino 1.0 su macchina linux (opensuse) a 64bit

altri programmi fungono bene :frowning:

grazie buona giornata by Andrea

Ma se carichi il blink originale cosa succede?
Sei sicuro di aver collegati il LED sul pin 10?
Hai messo una resistenza in serie al led da 220-330 ohm?

fa lo stesso con il programmino "blink" originale, ovvero non blinka.

i led son su una basetta con collegamento ipper collaudato (uso sempre quella da tempi immemorabili), e se uso per esempio un programmino per accendere e spegnere il led via seriale in quel sistema tutto funge....

credo ci siano problemi con delay e volevo appunto chiedere se dalla 0022 alla 1.0 fosse cambiato qualcosa....

Certamente sono cambiate delle cose, ma non al livello di non far funzionare il blink; purtroppo non uso la 1.0 e non so dirti di più.
Hai riprovato con la 0022/23 sulla stessa basetta?

Sei incappato in uno degli errori presenti nella toolchain Avr di Gnu presenti nelle distribuzioni più recenti.
Che distribuzione usi? Che versioni hai di avr-gcc, binutils-avr e avr-libc? Immagino che avr-gcc sia alla 4.5 e binutils-avr alla 2.22...

Al posto di delay usa _delay_ms(1000), per usarla però devi includere l'header file <util/delay.h>, se funziona allora è il core di Arduino che non va, se continua a non funzionare allora è la toolchain.

Ciao.

no, ora la riscarico e provo...... (anche se di sto pc mi fido poco penso reinstallero su altro disco per prova dopo)

MauroTec:
se continua a non funzionare allora è la toolchain.

E' questo il problema, ci metto la mano sul fuoco.
E' uno di quei bug in cui sono incappato io mesi fa e che mi hanno fatto dannare.

@Martinix:
lascia perdere l'IDE, il bug è nella toolchain.

leo72:
Sei incappato in uno degli errori presenti nella toolchain Avr di Gnu presenti nelle distribuzioni più recenti.
Che distribuzione usi? Che versioni hai di avr-gcc, binutils-avr e avr-libc? Immagino che avr-gcc sia alla 4.5 e binutils-avr alla 2.22...

cavolaccio, con _delay_ms(1000) funge alla grande!!!!!! :fearful: :fearful:

@leo:
avr-gcc = 4.6.2
binutil-avr = 2.22
avr-libc=1.7.1

uso opensuse 12.1 64bit

Martinix:
@leo:
avr-gcc = 4.6.2
binutil-avr = 2.22
avr-libc=1.71

uso opensuse 12.1 64bit

Allora delay non ti dovrebbe funzionare per via di binutils-avr 2.22, se non ricordo male.
Con avr-gcc 4.6.2 dovresti avere problemi a compilare sketch quali l'ArduinoISP.

La questione della toolchain è dolorosissima, sotto Linux. Ti potrei consigliare di scaricarti lo script da AvrFreaks che compila la toolchain con le patch Atmel per sistemare tutto ma se non sai dove poi metterla è un problemino. L'alternativa è scaricarti la versione 1.0.1RC1 dell'IDE di Arduino a cui hanno allegato anche alla versione Linux la toolchain patchata che funziona (quasi) senza problemi. Il (quasi) è riferito al bug del codice di dimensioni superiori ai 128 kB.

posso povare la Rc sai indicarmi dove la posso reperire?

grazie da andrea

p.s. la cosa che mi terrorizza non è il delay, ma se ci son altre rogne più subdole imbosate da qualche parete =(

L'alternativa è scaricarti la versione 1.0.1RC1 dell'IDE di Arduino a cui hanno allegato anche alla versione Linux la toolchain patchata che funziona (quasi) senza problemi. Il (quasi) è riferito al bug del codice di dimensioni superiori ai 128 kB.

Penso che sia proprio la cosa più sensata, sempre se usi solo arduino ide e non altri ide.

Però se _delay_ms funge allora il problema e nel core Arduino, bho prova un po _delay_us(1000) occhio che sono 1ms magari li metti in ciclo 500.

La cavolata è che l'ide sopprime tutti i warning del compilatore, e così è difficile indagare.

Ciao.

confermo, con arduino 1.0.1RC1 il problema (almeno quello del delay) è scomparso come per magia :slight_smile:

(ci son altri ide sotto linux per ardiono a pate kdevelop, che però con la 1.0 non va ancora)

(ci son altri ide sotto linux per ardiono a pate kdevelop, che però con la 1.0 non va ancora)

Uno c'è dedicato ad arduino ma..... aspetta che cerco nel segnalibri.

trovato https://gitorious.org/arduide

ma devi clonare il repo con git e poi compilare ed installare, servono le Qt versione ??

Non ho più seguito lo sviluppo da l'anno passato e ora vedo che c'è attivita nel repo quindi lo sviluppo è andato avanti.

Ciao.

Controllando sul sito del progetto, in data 27/02/2012 è stato annunciato che Arduide supporta sia l'IDE 0023 che la 1.0 quindi immagino che sia tuttora sviluppato e supportato.

Mi scoccia riprovare nuovamente a compilare ed installare e se è come la vecchia versione vuole anche installato l'arduino ide e poi cosa me ne faccio?

In più la scorsa volta avevo problemi con cmake che non conosco e annaspo per risolvere i problemi, ricordi che ci avevi provato anche tu? o forse no?

Ciao.

Che l'Arduide chiedesse anche l'IDE di Arduino me lo ricordo. Forse ho provato anch'io a compilarlo ma non me lo ricordo bene, mesi fa provai diversi IDE alternativi (compreso anche Eclipse) ma tutti furono un mezzo buco nell'acqua per cui lasciai perdere e, nonostante le critiche che non posso non muovere all'IDE di Arduino, lo uso perché bene o male il suo lavoro lo fa. Amen per le cose che mancano.

là oggi ho "rimesso2 in piedi kdevelop+arduino0022 (scricata dal sito) e cosi, mi sembra funzioni tutto, sia l'IDE che il mio delay...mi sa che per ora non migro alla version1.x (pur tenendomela)

Grazie per l'aiuto :slight_smile: