9.2.11. void OdometrieData(unsigned int *data)
Die Refl exlichtschranke wird ausgewertet. Die Leuchtdioden (D13, D14) werden aktiviert und die
A/D-Wandler-Werte der Fototransistoren (T11, T12) zurückgegeben. Wie in der Funktion LineData
() muss ein Speicherbereich mit zwei Integerwerten übergeben werden, der dann von der
Funktion gefüllt wird. Der erste Integerwert enthält den Wandler-Wert des linken (T11), der zweite
Integerwert den des rechten Fototransistors (T12). Maximale Helligkeit entspricht einem Wert von
’0’ dunkel entspricht einem Wert von ’1023’ 5 . Die beiden Extremwerte werden normalerweise nicht
erreicht, der Messwert bewegt sich irgendwo dazwischen.
Beispiel:
Auslesen der Refl exlichtschranke
unsigned int data[2]; //Speicher bereitstellen
.
.
OdometrieData(data);
data[0] enthält den Wert vom linken Fototransistor (T11)
data[1] enthält den Wert vom rechten Fototransistor (T12)
Um Missverständnissen vorzubeugen: OdomertieData() liest nicht die Drehzahl direkt aus,
sondern nur die aktuelle Helligkeit der Geberscheibe an der Lichtschranke. Eine Auswertung der
Helligkeitswerte, ein Zählen der Hell-Dunkel-Übergänge und die Bestimmung der Drehzahl des
Rades daraus bleibt dem Programmierer überlassen!
Lesezeichen