3

我们将 micro:bit 与附件 Bit:bot XL 一起使用。我有一个模块(robot.py),它只有一个用于 Bit:bot 的功能(目前)。在我的脚本(my.py)中,我导入了这个函数。但是刷完 micro:bit (uflash my.py) 后,LED 矩阵上出现错误:“导入错误:没有名为机器人的模块”。但是,如果我只是在我的模块中使用标准 Python 函数(如 print())并在 VSCode 终端中运行我的脚本,它就可以正常工作。将我的函数直接放入我的脚本中也可以正常工作。为什么我不能将我的脚本和模块都传输到 micro:bit?

可以在Flash microbit 嵌入类 .py 文件中找到解决方法。解决方法要求您先刷新 micro:bit,然后使用 ufs 传输模块。它有效,但对于我们的目标群体——盲童来说,事情变得更加复杂。

我的模块robot.py 存储在一个名为bitbot 的文件夹中。文件夹路径在 sys.path 中指定。包中还有一个空文件__init__.py

# my.py
from microbit import *
from robot import drive

drive(500, 3000)
# bitbot/robot.py
from microbit import *

def drive(speed, duration):
    """Makes the Bit:bot move forwards with a given speed for a number of milliseconds"""
    pin8.write_digital(0) #Left motor direction
    pin12.write_digital(0) #Right motor direction
    pin16.write_analog(speed) #Left motor speed
    pin14.write_analog(speed) #Right motor speed
    sleep(duration)

我尝试了不同的方法来导入模块,但它们都给出了相同的导入错误:import bitbot, import robot, from bitbot import *, from robot import *, from bitbot import drive, from robot import drive, from bitbot.robot import drive .

我用:

4

1 回答 1

0

您可能需要安装 VSCode 扩展程序才能将文件写入您的 MicroBit。看看Joseph Fergusson 的 micro:bit

于 2020-03-18T20:39:58.620 回答