Ich habe einen Sensor mit dem Interrupt-Ausgang mit einem Eingang Pin auf meinem RaspberryPi verbunden. Mein Ziel ist es, ein Ereignis vom Sensorinterrupt auszulösen. Das Datenblatt für meinen Sensor sagt, dass, sobald ein Interrupt auf dem Sensor ausgelöst wird, das Unterbrechungsstatusregister das entsprechende Bit auf 1 gesetzt hat und so bleibt, bis es gelöscht wird; während das Statusregister ein Statusbit von 1 hat, wird das Unterbrechungsfeld auf dem Sensor heruntergezogen.Raspberry Pi, wie Ereignis auf Pull-down-Interrupt-Pin auslösen
Mein Problem ist, dass ich sehen kann, dass das Statusregister einen Interrupt korrekt widerspiegelt, wenn ich den Sensor physisch auslöst. Aber wenn ich den Stift von meinem Pi lese, sehe ich keine Veränderung, die sich spiegelt. Hier ist der Kern meines Codes:
Der erste Druck ändert sich entsprechend meiner Interaktion mit dem Sensor wie erwartet. Der zweite Ausdruck zeigt, dass der Stift 1 oder 0 hält, je nachdem, ob er auf Hochziehen oder Herunterziehen eingestellt ist.
Es scheint so, als ob das Problem darin liegt, dass der Sensor immer dann, wenn der Interrupt ausgelöst wird, den Pin herunterzieht und der Pi ihn hochzieht ... Wie soll ich damit umgehen?
Der Sensor die VCNL4010 ist [https://www.adafruit.com/products/466]
Zum Testen habe ich den Pin nicht konfiguriert, um einen Interrupt auf dem Pi auszulösen. Es ist nur eine Eingabe, die ich abrufe, damit ich sehen kann, wie sich die Werte aufgrund des Sensorinterrupts ändern. – Philip