PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [M32]Fehler mit dem Mikrofon



Fabian E.
02.02.2010, 00:09
Hallo,

ich habe seit kurzen einen sporadischen Fehler mit dem Mikrofon auf der M32-Platine. Ich frage ich meinem Programm in Abständen von etwa 400ms den Mikrofonwert mit getMicrophonePeak() ab. Einmal vor Programmstart wird dischargePeakDetector() aufgerufen.
Nun kommt es aber vor, dass die Auslesemethode irgendwie nicht mehr funktioniert... Fragt mich nicht warum, aber alles was danach kommt wird quasi nicht mehr ausgeführt... Näheres dazu unten im Code:



void printSensors(void)
{
StartFrame();

writeString_P("SpeedL:");
writeInteger(mleft_speed, DEC);
writeString_P("\n");

writeString_P("SpeedR:");
writeInteger(mright_speed, DEC);
writeString_P("\n");

writeString_P("PowerL:");
writeInteger(adcMotorCurrentLeft, DEC);
writeString_P("\n");

writeString_P("PowerR:");
writeInteger(adcMotorCurrentRight, DEC);
writeString_P("\n");

writeString_P("Bat:");
writeInteger(adcBat, DEC);
writeString_P("\n");

writeString_P("LightL:");
writeInteger(adcLSL, DEC);
writeString_P("\n");

writeString_P("LightR:");
writeInteger(adcLSR, DEC);
writeString_P("\n");

//writeString_P("Mic:");
//writeInteger(getMicrophonePeak(),DEC);
//writeString_P("\n");

EndFrame();
}

Wenn ich den Code für das Mikrofon nun ausklammere, dann wird irgendwann alles hinter dem writeString("Mic:"); nicht mehr ausgeführt.
Ich bekomme in der Console in meinem festgelegten Zeitabständen immer die Ausgabe vom Anfang bis zu "Mic:" dann geht es wieder mit dem Anfangsbefehl(StartFrame()) los...

Hat jemand eine Idee was das sein könnte? Dieses Verhalten ist mir früher noch nie aufgefallen und diesen Teil des Codes benutze ich schon länger...

Fabi

Ceos
02.02.2010, 10:27
das ist zu wenig programmcode um überhaupt etwas erkennen zu können ... zeig doch mal ein paar zeilen aus dem methoden die du aufgerufen hast .... ist ja sonst fast, als würdest du sagen, das zelt fällt immer zusammen und dann zeigt man ein foto vom zelt ^^