Hallo oberallgeier,

hübscher Farbton für das OT. Blau (also der Inhalt) ist wie immer lesenswert. Aber trägt das nicht sehr stark auf? Man kann sein OT dann ja nicht mehr so gut in unwichtigen sachlichen Infos verstecken
Ende Blau.

Nein, es gibt keine Rückmeldung. Sowohl hier als auch unter "Asuro: Umbau der IR-Schnittstelle zur Hinderniserkennung" von waste. Dort hatte ich noch einen Hinweis als Link hier hin verlegt, dass hier geCIRt wird. Und irgendwo anders hatte ich noch einem IR-Hindernis-Assembler-Progger dieses geCIRce verlinkt.

Deiner Aussage, dass der Interrupt ca. 5% der Rechenleistung benötigt, würde ich grob erst einmal PI*Daumen zustimmen. In der von mir geschriebenen CIR liegt man bei ca. 15%. Aber ich rufe das ja auch mit 36 kHz auf und du nur mit 4,88 kHz.
Wenn du mal die Datei *.lss postest, kann man die einzelnen Assemblerbefehle in der ISR zusammenzählen. Das würde dann eine schöne Gegenrechnung zu deiner Zeitmessung ergeben.

Wenn du die 27 Messwerte nicht benötigst, dann ist es deinem Hauptprogramm überlassen diese Information NICHT zu nutzen.
Um weniger Messwerte zu erhalten, könntest du 3 Varianten bedenken:
1: Mehr Messwerte als die 10 angegeben pro OCR2-Wert fordern.
2: Die ISR nur dann aktivieren, wenn das Hauptprogramm Daten benötigt.
3: Die 4,88 kHz reduzieren.

Bei 1: veränderst du in Grenzen die Messgenauigkeit, aber die verbrauchte CPU-Zeit in der ISR bleibt bei den 5%. (Sie sinkt etwas)
Bei 2: hast du wieder den Nachteil einer einzelnen Messung, da du ja nach dem Einschalten der ISR im Hauptprogramm erst wieder auf ein gültiges Ergebnis warten musst. Damit ist aber der Vorteil, dass die Messwerte "einfach so da sind" hinfällig.
Bei 3: habe ich keine Ahnung, ob deine Motorfunktionalität das verträgt.

Zu deinen Messergebnissen oben aus dem Screenshot hast du nicht angegeben ob die Daten im Stand von deinem Robi, oder mit einer Änderung der Umgebung aufgenommen sind.
Ich vermute, dass es sich um eine 'Standaufnahme' handelt. (Du hättest da sonst ja drauf hingewiesen.)
Dann ist es tatsächlich etwas merkwürdig, dass die Werte so pendeln.
Zwischen 2 (sehr nah) und 26 (sehr weit) wäre es ja mit meiner Umrechnung in cm dann zwischen 12 cm und 151 cm.
Ne, ne, da ist etwas faul.
=> Code posten ist wohl angesagt

Gruß Sternthaler
P.S: in Blau: Hätteste du mal das Fock anstatt des Genua eingepackt. Dann wäre auch nichts passiert (Wii langweilig)
Wurden bei 8 Bft schon Tüten verteilt, oder ist der Weg über die Reling die Lösung? Bis 6 halte ich nur durch.