Forum: Mikrocontroller und Digitale Elektronik [Gelöst] Arduino Infrarot + Motortreiber


von Sebastian M. (sebastian_m48)


Lesenswert?

Guten Abend alles zusammen!

Ich habe ein Problem und zwar folgendes:

Ich habe aus einem alten DVD-Player einen Infrarot-Empfänger ausgelötet 
und mit der IRremote.h - Libary und der passenden Fernbedienung das 
ganze auch zum laufen gebracht. Nun wollte ich gerne einen kleinen 
Roboter steuern, den ich vor längerem schon einmal zusammen gebaut 
hatte. Soweit auch kein Problem, alles aufgebaut - 2 Motoren werden mit 
dem L293D Motortreiber gesteuert. Das funktioniert auch alles soweit, 
bis ich mit der vordefinierten Funktion

 "Infrarot_Empfaenger.enableIRIn()"

mein Infrarot-Objekt aktiviere. Ab diesem Punkt wird komischerweise nur 
noch ein Rad durch den L293D bewegt! Das andere macht keinen Zuck mehr..
Entferne ich diese enable-Funktion wieder (wodurch der Infrarotempfänger 
natürlich nicht mehr geht), drehen sich wieder beide Räder. Ich bin mit 
meinem Latein am Ende.

Also nochmal zusammengefasst:

- Arduino Uno
- L293D Motortreiber
- Räder/ Motoren drehen beide wie sie sollen, bis zum Aufruf der 
genannten   Funktion für den Empfänger, dann dreht sich nur noch das 
linke Rad
- Infrarotempfänger geht
- auf einer Internetseite fand ich folgenden Hinweis:

"irrecv.enableIRIn()
Begin the receiving process. This will enable the timer interrupt which 
consumes a small amount of CPU every 50 µs."


Code poste ich auch gerne, wenn ihn jemand sehen will, wobei ich nicht 
glaube das es an dem liegt, da ja einzeln alles bestens funktioniert.

Grüß
Sebastian

: Bearbeitet durch User
von Sebastian M. (sebastian_m48)


Lesenswert?

Ich konnte mittlerweile mein Problem selbst lösen. Nachdem ich noch viel 
rumprobiert habe konnte ich feststellen, dass Pin3 mit der IR-Library 
nicht mehr funktioniert.

Nach einigem googlen stellte sich heraus, dass !!Pin2 und Pin3 von der 
Library irgendwie als Auslöser für Interrupts genutzt werden!! und so 
vom User nicht mehr angesprochen werden können.

Grüß
Sebastian

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.