Bonjour,

voilà je me suis mis petit à petit à l'arduino mais je bute déjà sur un truc normalement simple.
Je teste un petit code qui utilise un timer pour faire un signal à fréquence variable

Voilà le code:
Code:
void setup() {
  // put your setup code here, to run once:
  pinMode(11, OUTPUT);
  init_timer1();//compte l'intervalle entre 2 pulses
  //init_timer2();//compte le nombre de pulse
  interrupts(); // enable all interrupts

}

void loop() {
  // put your main code here, to run repeatedly:
  
}
ISR (TIMER1_COMPA_vect) {
  digitalWrite(11, ! digitalRead(11));
}
void init_timer1() {
  OCR1A = 2500; // ~10ms
  TCCR1A = 0;
  TCCR1B = 0;
  TCCR1B |= (1 << WGM12);
  TCCR1B |= (1 << CS11) | (1 << CS10); //clock div par 64
  TIMSK1 |= (1 << OCIE1A); //interrupt sur OCR0A

}
(les commentaires sont pas forcement correct, vu que j'ai changer souvent pour tester)

J'ai bien un signal carré mais j'ai beau changer OCR1A le signal change absolument pas, toujours à la même fréquence!

Bon comme je bloquais comme un con et trouvait pas ce qui foirait, j'ai essayé le même code avec avr-studio que je connais bcp mieux!
Code:
#include <avr/io.h>
#include <avr/pgmspace.h>
#include <util/delay.h>
#include <avr/interrupt.h>

#define BIT_SET(a,b) ((a) |= (1<<(b)))
#define BIT_CLEAR(a,b) ((a) &= ~(1<<(b)))
#define BIT_FLIP(a,b) ((a) ^= (1<<(b)))
#define BIT_CHECK(a,b) ((a) & (1<<(b)))

void main(void)
{
	init_timer1();
	DDRB=0b0000001;
	sei();
	while (1){
	}

}
ISR (TIMER1_COMPA_vect){
  BIT_FLIP(PORTB,0);
}

void init_timer1(){
    OCR1A=20; // ~10ms
    TCCR1A = 0;
    TCCR1B = 0;
    TCCR1B|=(1<<WGM12);
    TCCR1B|=(1<<CS11)|(1<<CS10);//clock div par 64
    TIMSK1|=(1<<OCIE1A);//interrupt sur OCR0A
    
}
Ce code là ,très équivalent fais bien ce que je pensais,la fréquence change quand je change OCR1A.

Du coup pourquoi celui version arduino ne fonctionne pas?
Sinon pour info, code arduino chargé sur un atmega328 d'un arduino nano et l'autre code chargé sur un 88 (donc µC 'identique' à part la flash normalement), je sais pas si ca rentre en compte!

Sinon j'ai essayé de trouver comment chargé le fichier hex compilé par avr-studio sur l'arduino nano mais j'ai pas vraiment trouvé comment faire. Une idée?
Merci bien