Как обработать указанную c функцию обратного вызова в Python? (Микроконтроллер, БЛЕ) - PullRequest
0 голосов
/ 03 апреля 2020

У меня есть соединение Bluetooth LE между микробом: бит и малина. Связь между этими двумя устройствами основана на этой библиотеке -> https://github.com/ukBaz/python-bluezero/blob/master/bluezero/microbit.py

Сначала вы инициализируете бит micro: в коде python:

ubit = microbit.Microbit(adapter_addr='DC:A6:32:53:AC:79',
                         device_addr='DE:F1:EB:27:16:D1',
                         accelerometer_service=True,
                         button_service=True,
                         led_service=True,
                         magnetometer_service=False,
                         pin_service=False,
                         temperature_service=True,
                         uart_service=False)

Теперь вы можете получить информацию из микро: бит так:

print("Temperature:", ubit.temperature)


В документации также есть такая функция:

def subscribe_uart(self, user_callback):
        """
        Execute user_callback on data being received on UART service
        :param user_callback:
        :return:
        """
        self.uart_tx_cb = user_callback
        self._uart_tx.add_characteristic_cb(self._uart_read)
        self._uart_tx.start_notify()

С помощью этой функции должна быть возможность подписаться на uart micro: bit. Поэтому каждый раз, когда micro: bit пишет что-то в uart, функция должна запускаться.

Теперь к моему вопросу: Как я могу встроить эту функцию в мой python -код? Я не знаю, как с этим справиться.

...