bonjour,
deja avant tout je tiens a peciser que je suis debutant en arduino
J'ai programmer mon arduino mega 2560 afin qu'il génère des impulsions déphaser afin d'effectuer des rotation.
j'ai fait le programme avec un timer1 en mode ctc mais il ne fonctionne pas enfin a l'oscilloscope il n'ya pas de déphasage
et avec la communication serie la valeur bobine ne s'affiche pas.
voila le programme que j'ai
voila les instruction que je souhaite faire avec le timerCode HTML:char bobine = 1; void setup() { Serial.begin(9600); DDRB = 0b11100000; noInterrupts(); TCCR1A = 0; TCCR1B = 0b00001100; TIMSK1 = 0b00000010; TCNT1 = 0; OCR1A = 31250; switch(bobine) { case 1: PORTE = B01100000; break; case 2: PORTE = B10100000; break; case 3: PORTE = B11000000; break; } Serial.println(bobine); interrupts(); } ISR(TIMER1_COMPA_vect) { switch (bobine) { char valeur; case 1: //char valeur; valeur = PINB; PORTB = ~valeur; ++bobine; break; case 2: //char valeur; valeur = PINB; PORTB = ~valeur; ++bobine; break; case 3: //char valeur; valeur = PINB; PORTB = ~valeur; bobine = 1; break; } } void loop() { // Mettre ici le programme principal. }
est ce que qu'elqu'un pourrait m'aider a trouver une solution,Code HTML:PORTA = B00001100; //bobine1: on, bobine2: off, bobine3: off delay(temp); PORTA = B00001010; //bobine1: off, bobine2: on, bobine3: off delay(temp); PORTA = B00000110; //bobine1: off, bobine2: off, bobine3: on delay(temp);
-----