(十六)基础例子:心情电台

释放双眼,带上耳机,听听看~!

这个项目使用收音机与其他micro:bit分享你的心情。当你按下时A,你的朋友会看到一个笑脸。当你按下时B,他们会看到一张皱眉的脸。

发个笑脸

micro:bit无法理解情绪,但数字相当不错。事实上,它可以使用无线电天线在micro:bit之间发送数字,就像电话可以发送短信一样。

让我们添加A按下按钮时发送数字的块。我们假设这0是发送笑脸的“情绪代码” 。

input.onButtonPressed(Button.A, () => {
    radio.sendNumber(0)
    basic.showIcon(IconNames.Happy)
})

收到笑脸

我们添加一个||radio:on radio received||模块,只要有新的“情绪”消息进入就会运行代码。该receivedNumber变量包含发送的数值。由于我们已经确定它0笑脸,我们还需添加条件||logic:if then||语句来显示此图标。

radio.onDataPacketReceived( ({ receivedNumber }) =>  {
    if (receivedNumber == 0) {
        basic.showIcon(IconNames.Happy)
    }
})

发脾气

以类似的方式为我们的消息传递应用添加另一种心情。我们认为“情绪代码” 1意味着皱眉。我们可以添加一个B发送该代码的按钮事件。

input.onButtonPressed(Button.B, () => {
    radio.sendNumber(1)
    basic.showIcon(IconNames.Sad)
})

如果是||radio:on radio received||模块,我们添加另一个条件||logic:if then||语句来处理皱眉的 “情绪代码”。

radio.onDataPacketReceived( ({ receivedNumber }) =>  {
    if (receivedNumber == 0) {
        basic.showIcon(IconNames.Happy)
    }
    if (receivedNumber == 1) {
        basic.showIcon(IconNames.Sad)
    }
})

将您的代码下载到多个micro:bit并尝试一下!

挑战

尝试添加新代码并使用||input:on shake||事件发送它。

全部来源

input.onButtonPressed(Button.A, () => {
    radio.sendNumber(0)
    basic.showIcon(IconNames.Happy)
})
input.onButtonPressed(Button.B, () => {
    radio.sendNumber(1)
    basic.showIcon(IconNames.Sad)
})
radio.onDataPacketReceived( ({ receivedNumber }) =>  {
    if (receivedNumber == 0) {
        basic.showIcon(IconNames.Happy)
    }
    if (receivedNumber == 1) {
        basic.showIcon(IconNames.Sad)
    }
})

给TA打赏
共{{data.count}}人
人已打赏
Micro:bit-基础例子

(十五)基础例子:骰子

2018-9-14 19:49:46

Micro:bit-基础例子

(十七)基础例子:萤火虫

2018-9-16 20:49:35

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索
'); })();