Hallo Leute,
ich hänge schon eine ganze weile an einem Problem und komme einfach nicht weiter...
Ich möchte die Zeit zwischen einer steigenden und der jeweils folgenden steigenden Flanke mittels Interrupt messen. Durch Polling komme ich schon auf das gewünschte Ergebnis und auch die Zeitmessung zwischen der steigenden und fallenden Flanke funktioniert mit folgendem Code ganz gut.
long dauer;
long start;
long ende;
void setup() {
attachInterrupt(3, test, CHANGE);
Serial.begin(9600);
}
void loop() {
print();
}
void test() {
attachInterrupt(3, test1, HIGH);
start=micros();
}
void test1() {
attachInterrupt(3, test, LOW);
dauer=micros()-start;
}
void print() {
Serial.println(dauer);
}
Eigentlich war meine Lösung einfach das Ergebnis der Zeit zwischen steigend und fallend sowie zwischen fallend und steigend zusammen zu zählen und fertig aber irgendwie will das nicht so recht ![]()
Ich bitte um eure Hilfe!
Danke schon mal!
Sebi
PS. Ich verwende den Teensy 3.2, falls das irgendwie von Bedeutung ist.