Hallo Maro,
erstma danke für deine Hilfe. das mit dem ansprechen ist allerdings nicht auf meinem "Mist" gewachsen, sondern das habe ich aus einem Beispielprogramm zur C2 abgeleitet. Das entsprechende Codefragment hänge ich hier mal. Den abgeänderten Code Poste ich dann morgen noch mal. Wäre Super wenn Du dann noch mal drüberschauen könntest
Code:
//-------------------------------------------------------
//--- ACS VISUALIZATION WITH LEDs ---
//-------------------------------------------------------
function showACS()
{
int STATUS;
ccrp5.LEDSoff();
ccrp5.setACSLO();
loop
{
sleep 10;
STATUS=ccrp5.getCNSTAT();
if (STATUS and 0x01)==1
{ccrp5.LEDon(4);}
else
{ccrp5.LEDoff(4);}
if (STATUS and 0x02)==2
{ccrp5.LEDon(1);}
else
{ccrp5.LEDoff(1);}
}
}
Gruß
Thomas
P.S.:
Hier der geänderte Code
Code:
thread main
{
// Deklaration der Variablen
string s;
int VALUE;
int STATUS;
// Modul initialisieren
VALUE=ccrp5.init();
// Reset
ccrp5.clear();
// Alle LED´s aus
ccrp5.LEDSoff();
// Empfindlichkeit des ACS Systems auf höchste Sensitivität
ccrp5.setACSHI();
// Beginn der Schleife
loop
{
// Subsystem abfragen
STATUS=ccrp5.getCNSTAT();
// Wenn der rechter Sensor anspricht
if (STATUS and 0x03)==1
{
// .. dann LED 4 an
ccrp5.LEDon(1);
// .. dann Stopp
ccrp5.FWD(0,0);
}
// Wenn der linke Sensor anspricht
if (STATUS and 0x03)==2
{
// .. dann LED 1 an
ccrp5.LEDon(4);
// .. dann Stopp
ccrp5.FWD(0,0);
}
// Wenn keiner der Sensoren anspricht
if (STATUS and 0x03)==0
{
// .. dann vorwärts, Geschwindigkeit 150
ccrp5.FWD(150,150);
}
}
}
Lesezeichen