Skocz do zawartości

Funkcja IrReceiver.begin(); powoduje ,,wyłączenie" części silników


Pomocna odpowiedź

Napisano (edytowany)

Witam.

Robię auto na pilota. Używam sterownika silników L293D oraz Arduino UNO. Problem polega na tym, że gdy wgrywam ten kod:

#include <IRremote.hpp>
#include <AFMotor.h>

AF_DCMotor motorM1(1);
AF_DCMotor motorM2(2);
AF_DCMotor motorM3(3);
AF_DCMotor motorM4(4);

const int RECV_PIN = A0;
int speed=200;

void setup() {
  IrReceiver.begin(RECV_PIN, ENABLE_LED_FEEDBACK);
  motorM1.setSpeed(speed);
  motorM2.setSpeed(speed);
  motorM3.setSpeed(speed);
  motorM4.setSpeed(speed);
}

void loop() {
  motorM1.run(FORWARD);
  motorM2.run(FORWARD);
  motorM3.run(FORWARD);
  motorM4.run(FORWARD);
}

to kręci się tylko prawa strona silników (2 silniczki), a jak wgrywam ten sam kod, ale bez funkcji:

IrReceiver.begin(RECV_PIN, ENABLE_LED_FEEDBACK);

to kręcą się wszystkie silniki - czyli auto jedzie w przód. Próbowałem już zmiany pinu RECV_PIN na inne, ale to nie poskutkowało. Wszystko jest dobrze popodpinane (motor driver wpięty w Arduino), a OUT odbiornika do pinu A0. Odbiornik IR na 100% sprawny. Dlaczego takie coś ma miejsce? Jak to naprawić?

Z góry dziękuje za pomoc!

Edytowano przez BeeKeyPro

Samemu udało mi się znaleźć rozwiązanie. Obie biblioteki używały tego samego ,,timera". Musiałem wejść w plik konfiguracyjny biblioteki IRRemote i zmienić używany timer. Mam nadzieje że to oto chodziło i że nie wyniknie z tego inna zła rzecz. 😄 

  • Lubię! 2
(edytowany)

@Treker Jasne. Wszystko co musiałem zrobić to:

  1. Wejść w tą ścieżkę C:\Users\NAZWA UŻYTKOWNIKA\Documents\Arduino\libraries\IRremote\src\private
  2. Otworzyć plik IRTimer.hpp za pomocą notatnika
  3. Usunąć te dwa znaki ,//' które znajdowały się przed #define IR_USE_AVR_TIMER1
  4. Zapisać zmiany

To wszystko. 😄 

Edytowano przez BeeKeyPro

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...