Micro: bit - Акселерометр - (Micro python) делает подсчет микробитов нисходящими движениями - работает только с жестами - PullRequest
0 голосов
/ 09 февраля 2020

Следующий код работает просто отлично:

# Add your Python code here. E.g.
from microbit import *

score = 0
display.show(str(score))

   while True:
    if accelerometer.was_gesture('face down'):
        score += 1
        if score < 10:
            display.show(score)
        else: 
            display.scroll(score)
    continue

'' 'Но когда я пытаюсь заменить was_gesture (' face down ') на get_Z, я получаю ошибку:' ''

# Add your Python code here. E.g.

    from microbit import *

    score = 0
    display.show(str(score))

    z = accelerometer.get_z()

    while True:
        if z < accelerometer.get_z(-500) 
            score += 1
            if score < 10:
                display.show(score)
            else: 
                display.scroll(score)
        continue

Я получил ошибку? Но почему? Я просто хочу, чтобы микробиты подсчитывали каждый раз, когда я перемещаю устройство ниже определенной точки?

Ответы [ 2 ]

1 голос
/ 10 февраля 2020

Оператор accelerometer.get_z () должен быть внутри, пока l oop, чтобы он обновлялся. L oop также нуждается в операторе sleep, чтобы не было отложенных обнаружений для отображения.

Я тестировал приведенный ниже код на микро: бите, используя редактор mu. Когда микробит направлен светодиодом вверх, счет увеличивается. Когда оно обращено вниз, счет останавливается.

from microbit import *
uart.init(baudrate=115200)

score = 0
display.show(str(score))

while True:
    z = accelerometer.get_z()
    if z < -500:
        score += 1
        if score < 10:
            display.show(score)
        else: 
            display.scroll(score)
    sleep(1000)
    continue
0 голосов
/ 10 февраля 2020

Вы пропустили двоеточие в конце этой строки:

       if z < accelerometer.get_z(-500) 

Кроме того, метод get_z() не принимает аргументов: https://microbit-micropython.readthedocs.io/en/latest/accelerometer.html#microbit .accelerometer.get_z

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...