Hallo
Ein Trippelkünstler ist der RP6 sicher nicht, aber den IR-Ball kann er mit seinem ACS/IR-Sensor erkennen:
Code:
// IR-Signal detektieren mit IC3 (TSOP34836) 13.4.09 mic
// Der RP6 erkennt IR-Signale mit 36kHz-Trägerfrequenz mit seinem Onboard-TSOP
// Vorbereitung für die Verwendung des AREXX-IR-Balls, funktioniert aber auch
// mit normalen Fernbedienungen.
// Wenn man den Ball einschaltet werden Sternchen ausgegeben. Der TSOP invertiert
// das Signal, deshalb ist der Eingang high wenn kein Signal erkannt wird.
// https://www.roboternetz.de/phpBB2/viewtopic.php?t=47503
#include "RP6RobotBaseLib.h"
int main(void)
{
initRobotBase(); // Library initialisieren
powerON(); // unter anderem den TSOP einschalten
writeString("Jetzt IR-Signal senden\n\n");
while(1)
{
setLEDs(0);
while(PINB & ACS); // Port B2 ist der ACS-Eingang des TSOPs
setLEDs(63);
writeString("*\n"); // einfache Visualisierung
}
return(0);
}
Das funktioniert schon mal recht gut, allerdings nur wenn ich den Ball (der hier "zufällig" noch rumliegt) vor dem RP6 einschalte. Wenn ich den Ball dann zur Seite nehme oder abdecke wird er auch nicht mehr erkannt. Wenn ich den Ball dann eingeschaltet wieder vor den RP6 halte tut sich nichts mehr. Ich werde das aber noch genauer untersuchen und mich wieder melden.
btw ist bei meinem Ball die Platinenaufschrift ON/OFF des Schalters vertauscht.
Gruß
mic
[Edit]
Semiolon eingefügt nach der while-Schleife der ACS-Abfrage. Man sollte getesteten Code einfach nicht mehr editieren vor dem Absenden des Postings...
Lesezeichen