Как правильно удалить прерывание обратного вызова в Beaglebone черный
Как добавить прерывание обратного вызова для gpio pin P9_24 вот так
class Birdemke:
...
def __init__(self):
#initializatioin of variables
...
self.count = 0
def startReadingValue(self):
self.count = 0
Gpio.add_event_detect("P9_24", Gpio.RISING, self.readValueFromSensor, 0)
def pauseReadingValue(self):
Gpio.remove_event_detect("P9_24")
def readValueFromSensor(self):
self.count += 1
#reads value from i2c
...
этот класс Birdemke вызывается с сервера с использованием бутылки. Вызовы startReadingValue()
добавить и звонки pauseReadingValue()
сделать программу невосприимчивой к переднему краю. При удалении обнаружения событий программа иногда выдает AttributeError в строке self.count += 1
эта переменная подсчета не определена и ошибка ошибки сегментации в Gpio.remove_event_detect("P9_24")
line [после изменения добавления строки поверх self.count if hasattr(self,'count')
].