micropython - 有没有办法用两个微位测试 micropython 代码?
问题描述
我必须编写此代码,以便两个 microbits 可以相互交互。但我无法测试它,因为我只有一个。有没有办法通过一些在线网站/插件/东西来测试这段代码?代码: https ://pastebin.com/N0FirrsD (此代码将收到并采取相应措施)
from microbit import *
import radio
#Pin 0 is the left motor
#Pin 1 is the right motor
#Pin 3 is a buzzer
Starten = false
while Starten == false:
if button_a.is_pressed():
Starten = true
else:
microbit.display.scroll('Druk op A')
radio.on()
radio.config(channel=56)
radio.config(power=7)
while Starten == true:
Commando = radio.receive()
if Commando == "vooruit":
pin0.write_digital(1)
pin1.write_digital(1)
if Commando == "remmen":
pin0.write_digital(0)
pin1.write_digital(0)
if Commando == "links":
pin0.write_digital(0)
pin1.write_digital(1)
if Commando == "rechts":
pin0.write_digital(1)
pin1.write_digital(0)
if Commando == "toeter":
pin3.write_digital(1)
sleep(2000)
pin3.write_digital(0)
if button_b.is_pressed():
Starten = false:
https://pastebin.com/SPbLtWGr(此代码将发送命令)
from microbit import *
import radio
Starten = false
while Starten == false:
if button_a.is_pressed():
Starten = true
else:
microbit.display.scroll('Druk op A')
radio.on()
radio.config(channel=56)
radio.config(power=7)
while Starten == true:
if accelerometer.is_gesture("up"):
radio.send("vooruit")
if accelerometer.is_gesture("down"):
radio.send("remmen)
if accelerometer.is_gesture("left"):
radio.send("links")
if accelerometer.is_gesture("right"):
radio.send("rechts)
if button_a.is_pressed():
radio.send("toeter)
解决方案
一种选择是编写一些存根模块(microbit
、radio
等),让您可以在常规 Python 下测试您的代码。这将有助于清除基本的语法错误(例如,您的一些打印语句缺少结束引号)。
您可以使用文件或 FIFO 来模拟无线电和 GPIO 功能。
推荐阅读
- javascript - 正则表达式匹配多次
- laravel - 如何使用来自 html 的参数调用 javascript 函数?
- java - 在@CucumberOptions 中创建自定义文件报告名称
- python - 将默认字典更改为嵌套字典
- xcode - Xcode 10.1 beta 2 无效的工具链
- django - 无效数据。需要字典,但在 Django Rest Framework 中的序列化器字段出现 str 错误
- wordpress - 在网站 URL 后添加问号后,WordPress 网站未检测到 404 页面
- java - 如何将另一个项目中的一个项目作为模块使用?
- java - 为什么类 Car 会存储对象 car 和 car2 的正确信息,但类 Owner 不会存储对象 owner2 的信息?
- javascript - 无法使用单个 npm 命令编写多容器 docker 应用程序(Angular-Node-MongoDB)