掌控板的体感和通信功能初探
2020-06-30
今天我们用mPython与掌控板来做个更有趣的实验。这个实验让大家更好地了解掌控板的两个强大功能:通信功能以及3D方向感知功能。
当掌控板在手中上下左右倾斜时,掌控板芯片是能测量出来的,用这个功能我们可以把掌控板做成指南针、水平仪。以后我们学习组装掌控板小汽车时,也需要用到这个功能让它能够自动跟随既定轨迹行驶。
现在我们用掌控板的方向功能来实现用体感控制发送信号,另一块掌控板收到信号时控制显示图片。当掌控板A前后左右倾斜时,发出前后左右的无线信号。另一块掌控板B收到相应信号会出现四个不同方位的箭头标志,当掌控板A处于水平静止的状态则B显示禁止标志,如果掌控板A被摇晃则B出现一个问号的标志。
掌控板有无线广播功能,它使用2.4GHz的无线射频通讯,共13个频道。可实现一定区域内的简易组网通讯。在相同通道下,成员可接收广播消息,就类似对讲机一样。我们可以用两块掌控板进行相互间的收发消息。
一、对发送端掌控板A编程
1. 对发送端掌控板A编程,設定无线广播频道为14(如图1)。
2. 当掌控板向前倾斜时,无线广播发送本机A的方向信号“forward”,并在本机A上显示相应提示图标。注意为了正确显示图像,需要OLED显示清空;在坐标上显示内置图像;OLED显示生效三个积木依次组合(如图2)。
3. 其他方向的情况在“如果”后添加“否则如果”判断,以同样的形式添加。内置图像种类不少,不过多数是英文需要在Information目录下仔细找一下方向图标。摇晃和静止的效果也是同样设置(如图3)。
二、对接收端掌控板B编程
1. 与A板设置相同频道。
2. 设置一个变量“send”,用于储存广播接收到的信号。
3. 根据不同的信号设置B板收到信号后显示的文本或图片(如图4)。
总结,今天第一次用mPython编写结合通信功能的实验,难度并不大,主要目标是熟悉软件和两块掌控板的通信。显示效果:
链接:
https://pan.baidu.com/s/1AoWxsbk
b22eP5STc91SYRg
提取码:p30l