Skip to content

活动

告诉我一个秘密

中级 | MakeCode, Python | 按钮, 无线电 | 无线电波, 选择, 通信

第 1 步:编程

它是什么?

使用micro:bit的无线电功能来回答秘密问题。

两人在使用micro:bit无线电分享秘密

工作原理

  • 将此程序下载到两个micro:bit主板中。 你和一个朋友互相问问题,答案是“是”或“否”。
  • 输入按键A发送“yes”,按B发送“no”消息。 两个micro:bit的LED显示屏上将显示一个“√ ”或 “×”并持续半秒钟。
  • 程序使用无线电来秘密发送您的答案 - 没有任何人(除了您的伙伴)可以收到无线电信号。
  • 收到无线电消息后,程序将使用选择来测试消息:如果收到的消息等于“yes”,LED显示屏上会显示一个“√ ”,但如果消息等于“no”,将显示一个 “×”。
  • 请确保无线电群组编号在两块micro:bit主板中是一样的 - 您可以使用0至255之间的任何数字。
  • 如果有很多人在同一地点使用该程序,需要确保每组人都有自己独一的无线电群组号码。
  • 为了避免其他人窥探你的消息,请对你的无线电群组号码保密。

所需材料

  • 两个micro:bit(或者MakeCode模拟器)
  • MakeCode或者Python编辑器
  • 电池盒(选配)
  • 一个好友和一个要分享的秘密!

第 2 步:编程

1from microbit import *
2import radio
3radio.config(group=7)
4radio.on()
5
6while True:
7    message = radio.receive()
8    if message:
9        if message == 'yes':
10            display.show(Image.YES)
11            sleep(500)
12            display.clear()
13        elif message == 'no':
14            display.show(Image.NO)
15            sleep(500)
16            display.clear()
17    if button_a.was_pressed():
18        radio.send('yes')
19        display.show(Image.YES)
20        sleep(500)
21        display.clear()
22    if button_b.was_pressed():
23        radio.send('no')
24        display.show(Image.NO)
25        sleep(500)
26        display.clear()
27

第 3 步:完善

  • 针对“yes”和“no”显示不同的图标或消息。
  • 使用晃动、倾斜或同时按下A+B按键来发送不同的答案,如“maybe”。
  • 将“yes”和“no”更改为“dot”和“dash”并发送摩斯代码消息。