问题标签 [bbc-microbit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
35 浏览

python - Type Error Microbit Rock Paper Sciccors Project

I have a type error but can't seem to fix it.

The radio isn't yet implemented, but I get the error on the line:

I hope some of you might see the mistake I just made here.

0 投票
1 回答
132 浏览

c++ - 为什么我的数组只接受它们中的第一个数字?

使用 BBC 微型钻头。

微型钻头上有两个按钮,在我的代码中,按钮 A 用于偶数,按钮 B 用于负数。如果数字只有 1 或 0,则游戏运行良好,否则它会结束游戏,我不知道为什么了。

尝试仅使用数组中的 1 个数字并且它可以工作,或者甚至更改数组的顺序,数组中的第一个数字是唯一可以接受的数字。

所有最多 8 的偶数都应该在按钮单击 A 上工作,而在按钮单击 B 上的奇数最多 9。

0 投票
0 回答
233 浏览

python - Microbit Python Neopixel RGBW

我正在尝试使用 MicroBit 中的 RGBW NeoPixel 条带,它使用 CodeBlocks 工作,但我无法使用 MicroPython ( https://python.microbit.org ) 访问白色像素。看起来 neopixel 模块的版本是支持 4 色 LED 之前的旧版本。尽管有很多谷歌搜索,但我不知道我是否需要:

  • 导入不同的模块
  • 使用 neopixel.NeoPixelRGBW(pin0,60) 创建条带 [不起作用]
  • 使用 neopixel.NeoPixel(pin0,60,bpp=4) 创建条带 [不起作用]
  • 放弃尝试使用 MicroPython 并寻找替代的 python IDE
  • 其他我没有想到的东西
0 投票
2 回答
77 浏览

python - 我如何声明我的班级,以便我可以这样访问

在 micropython 中有一个模块 neopixel 可以与 ws2812 可寻址 LED 交互,示例代码是

这声明了由 pin0 控制的 64 个 LED,将第一个设置为红色并更新 LED 阵列。

我如何声明一个类,以便我可以像行一样分配值pixel[0] = (255, 0, 0)

0 投票
2 回答
246 浏览

python - 强制 Micro:Bit 关闭

我有这个停车系统的代码。当空格数超过 20 时,它会发送错误消息,因为 20 是空格的限制。我想在此之后尝试关闭程序。

我已经尝试过在 Python 中可以做的事情。这是:

这给了我一个属性错误。

这应该在 elif 语句之后关闭程序,而不是让它运行。还有更多代码(if 语句、循环、函数),但它们无关紧要。

谢谢 :)

0 投票
1 回答
229 浏览

python - 为什么此代码在没有任何输入的情况下在启动时显示“A”?

这是一个用于 microbit 的莫尔斯电码翻译器,但它在开始时显示“A”

我希望它将按钮按下转换为消息,但它只显示“A”

0 投票
1 回答
1492 浏览

typescript - 如何将 TypeScript 变量声明为 volatile?

我正在与BBC Micro Bit合作,并正在为 TypeScript 中的 Make Code 创建一个扩展。

我的机器人上的车轮编码器触发了以下事件。在事件内部,我增加了几个变量。在 Arduino 语言中,我将此类变量声明为“volatile”,表示该变量可以通过中断进行更改,从而确保我使用的是变量中的最新值。

TypeScript 在声明变量时是否有等效的“volatile”关键字?如果是这样,它是如何实施的?

0 投票
1 回答
337 浏览

javascript - Micro:bit 扩展“程序错误:取消引用 Null/未定义值”

我正在为控制 OLED 的 Micro:Bit 编写扩展。我有一个在任何函数之外声明的数组。当我尝试在函数内部使用它时,我在橙色弹出窗口中收到错误“程序错误:取消引用 Null/未定义值”。

据我所知,该程序无法识别任何函数内部的数组名称,并且我能够使用该名称创建一个新数组,就好像它超出了范围一样。直接在初始声明下方(在任何函数之外)运行相同的代码会按预期运行

以下是我可以制作的最简单的版本,但仍然会产生错误:

0 投票
1 回答
536 浏览

javascript - 如何使用 javascript w/o toFixed() 在 bbc:microbit 上舍入到小数点后 1,通常的乘法 + 除法给出尾随 9999 位?

给我 26.29999999999999999999 而不是 26.3

和 26.00000000001 而不是 26.0

我从温度传感器交替得到 2 个值:26.33 和 26.3200000

转换后我有:26.2999999999999

上面的重复数字只是一个例子。我在 micro bit 上的显示不够宽,无法全部看到。

我使用 toString() 来显示值。

不幸的是,toFixed() 和 toPrecision() 在 micro:bit 上不可用

可以通过其他一些操作来实现舍入吗?

0 投票
0 回答
50 浏览

variables - 在 microbit 中如何进行变量保存?

在此处输入图像描述 在此处输入图像描述 我想在一个按钮和b中制作阅读变量。和按钮 c(a+b) 显示可变 LED。如果我按下按钮 abba 而不是显示 led abba

但只能在我按下最后一个按钮时显示

所以帮我怎么做?

(Button.AB, function () { showImage(0) }) (Button.A, function () { images.createImage( . . . . . . # # # . . # # # . . # # # . . . . . . ) }) input.onButtonPressed(Button.B, function () { mos = images.createImage( . . . . . . . . . . # # # # # . . . . . . . . . . ) }) 让 mos: Image = null images.createImage( . . . . . . . . . . . . . . . . . . . . . . . . . )

那里只是只读按最后一个按钮