Lightunit

hy

Ich möchte für mein RC Car eine eigene Lightunit bauen. Ich habe das PWM Signal mittels PulseIn eingelesen und möchte nun mittels einer If Anweisung eine Led zu leuchten bringen jedoch funktioniert es leider nicht. vl könnt ihr mir ja helfen !!

int pin = 10;
int ledon = 9;
int ledvor = 11;
int ledruck = 12;
unsigned long pwm;
int motor;

void setup()
{
pinMode(pin, INPUT);
pinMode(ledon,OUTPUT);
pinMode(ledvor,OUTPUT);
pinMode(ledruck,OUTPUT);
Serial.begin(300);

}

void loop()
{

while(1)
{
pwm = pulseIn(pin, HIGH);

motor=pwm;

Serial.println (motor);

if (motor < 1860) pinMode (ledon, HIGH);

}
}

vielen dank im vorraus
mfg fanatic

Ich habe das PWM Signal mittels PulseIn eingelesen

Von wo kommt das Signal das mit PulseIn eingelesen wird ?

das Signal kommt vom Empfänger

die Werte passen, lass sie mittels dem Serial.print am Serial Monitor anzeigen.

mfg fanatic

Gut, das Signal das vom Empfänger kommt ist jedoch ein PPM Signal (Pulse Positions Modulation) und kein PWM !

http://wiki.rc-network.de/index.php/PPM

Stimmt jedoch steht sehr oft PWM :

http://www.rn-wissen.de/index.php/Servos

Aber darum geht es mir nicht. Da ich die Werte habe und die Werte sich auch richtig ändern bei betätigen des Hebels.
Jedoch bei der If Anweisung die LED nicht leuchtet obwohl die Aussage TRUE ist und ich mir nicht erklären kann wieso !!!

mfg fanatic

Vorwiederstand vor jeder Led ? Led nicht falsch herum angeschlossen ?

Ja Vorwiderstand und richtig angeschlossen. Wenn ich ein einfaches Blink durchführe leuchtet die LED !

hi,

if (motor < 1860) pinMode (ledon, HIGH);

sollte da statt des pinmode nicht ein digitalWrite rein?

gruß stefan

ja das war der Fehler

vielen Dank

mfg fanatic

hi, fanatic,

ist so ein typischer fehler, wo man dann dasitzt und grummelt. ich schaff's immer wieder, ein einfaches "=" in den vergleichsteil meiner if-anweisungen zu verwenden...

gruß stefan