-
-
Erfahrener Benutzer
Fleißiges Mitglied
Hi Hanni,
ahh jetzt verstehe ich die Aussage
Also im Moment führe ich die Datenübertragung im ISR aus. Ich könnte aber auch die Datenübertragung durch den ISR triggern lassen. Das Dumme war, das die Messung des RC-Kanals erst nachdem alles fertig war (Code und HW) mit eingeführt werden musste.
Das Ding macht folgendes (eigentlich nix berauschendes)
Über einen Durchflussmesser kommen Impulse, die der MC über den INT0 zählt. Anhand der gezählten Impulse werden dann Verbauchs- und Bevorratungsberechnungen durchgeführt. Zus. wird die Funktion des Durchflussmessers überwacht, also ob sich das Ding noch dreht oder nicht. Das wird unter anderem auch in der ISR des Timer1 gemacht. Also alle 0,25 Sek. werden die Zählerstände alt und neu verglichen und dann die Daten gesandt.
So nun muss der MC (Mega
zus. den RC-Kanal überwachen und bei überschreiten eines bestimmten Wertes dies über den Datentransfer melden.
Das alles funktioniert bisher einwandfrei, bis auf das Problem, das bei fehlendem Pulsein alles etwas durcheinanderholpert und durch die lange Wartezeit des Timeouts viele Impulse über den INT0 nicht gezählt werden.
Ich könnte aber vor der Hauptschleife noch eine Pulseinabfrage machen, wenn kein Impuls anliegt dann einfach den Pulsein in der Hauptschleife disablen. Wäre glaub ich die einfachste Variante.
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen