0

我有一个 BBC Micro:Bit。它插入 Adeept 板,该板具有 I2c 1602 LCD 显示屏、Adeept 操纵杆和 Adeept 按钮模块。我必须为开发板的 USB 端口供电才能运行 LCD 显示器。我创建了一个网站,并希望能够将数据从 Micro:Bit 同步到网站(您选择的名称和我稍后添加的其他数据)。我将名称设置为某事。然后我将我的 USB 插入计算机和 Micro:Bit。但是当我备份和恢复时,名称是列表中的第一个名称。
我在没有恢复的情况下备份了它,页面说这个名字是名字(即使我改变了它)。然后,当我导航到 Micro:Bit 上的名称“app”时,它还会显示名字。不知道是供电问题还是代码问题。我的脚本在这里:https://repl.it/@awesomecrater/smartmicrobit#script.js
我正在使用来自 GitHub 的这个库https://github.com/bsiever/microbit-webusb/blob/master/ubitwebusb.js和 Micro 上的代码:Bit 接收备份信号在伪代码中看起来像这样:

When serial received with New Line {
   Split the data at "|||||||" and store it in serialthing
   If the first item in serialthing is "backup" {
      write the variable name to the serial output
   } Else if the first item in serialthing is "name" {
      convert the second item in serialthing to a number and store it in name.
   }
}

有谁知道为什么将其设置回列表中的第一项?
name将列表的当前项存储为索引。

4

1 回答 1

0

你的意思是设置名称后连接USB线?(或者设置名称后电源关闭/打开?)

我可以想到两种可能导致您描述的行为的不同类型的问题:

  • Micro:bit 保留代码,但每次 micro:bit 电源关闭/打开重置时都会重置数据(变量中设置的值)。
  • 当 USB 电缆连接 micro:bit 时,它会重置,因此它将运行启动代码并将任何变量值重置为默认值。如果该启动代码将名称恢复为某个初始值,那么这就是您将获得的值。(我已经与 micro:bit 团队核实过,我认为没有办法在使用 WebUSB 连接问题时避免重置)。
于 2021-05-29T13:23:20.180 回答