妙招!学会用蓝牙连接Minecraft模块 ,游戏也能智能化

2019-07-29 Silicon Labs
Bluetooth,蓝牙,BGM111,BGM111A256V2 Bluetooth,蓝牙,BGM111,BGM111A256V2 Bluetooth,蓝牙,BGM111,BGM111A256V2 Bluetooth,蓝牙,BGM111,BGM111A256V2

Minecraft (我的世界)
Minecraft是一款沙盒游戏。该游戏没有故事情节,没有终极关卡,没有具体规则。当夜晚来临,挑战开始。你需要有光亮才能存活,所以你需要的第一件武器是火炬。火炬带来光亮,并且让敌人:僵尸,蜘蛛,鬼怪…之类的远离。



我是Minecraft的爱好者,在我的桌子上有一组乐高积木的Minecraft模型,我想让这个模型有一些附加功能使其更加完美。我想让灯在我靠近时自动点亮,并在当我离开的时候自动关闭。是的,我当然可以仅仅安装一个简单的开关来实现这一点,但是Bluetooth给了我更多的选择,可以无需电线,就探测我是否在桌边。下面让我们用SILICON LABS Blue Gecko Wireless Starter Kit和乐高积木来实现这一功能吧。

Minecraft + Lego积木
在组装积木的时候,我注意到火炬中间是空的,正好可以放LED。 为了模拟火炬光的闪烁,你通常需要两个红色的LED和一个黄色或橘黄色的LED。但三个LED会占据太多空间,所以我们可以使用PWM,通过改变频率,可以让LED改变亮度,从而使得LED看起来像在闪烁。但BGM111没有PWM输出,所以我需要PWM扩展卡。
 
Adafruit的16通道12位PWM板是理想的选择。它体积很小,但是功能完备。可以使用单个I2C地址处理最多16个LED,而且地址很容易改变。其还有针对每一个输出的220欧姆的内置电阻。
 


下面是焊接时间。板上有16个3针脚输出,V+, GND and PWM。没有比这个更简单的了。但在焊接之前吗,别忘了改变板的I2C地址。WSTK上温度传感器的地址为0x40,所以你需要将Adafruit的地址改成其他的。此处,我使用的是0x41。

开始连接的第一步
SDA/SCL和电源引脚在Adafruit板上被清晰标出。Adafruit板上的绿色LED需要亮起,标志着电源已经OK。下面是软件部分。我使用BGScript。它具有接受连接,与I2C外设对话,以及使用定时器等功能。PCA9685,为Adafruit供电,可以拥有在不同时间开关的PWM输出。
 
下面需要决定何时开,何时关。PCA有开始于0并且在4095结束的计数器,在这个范围内,你可以决定何时开,何时关。为了让事情简单,我将在0时打开LED,并且创建一个在0和4095的随机数来让LED随机关闭。
 
为了发送这一信息,你需要在I2C发送5个字节。首先是LED,其基址是0x06,每个LED需要4个字节的数据,所以我们使用寄存器0x06 + (LED * 4)。接下来的两个字节确定何时LED打开,因为你需要即刻打开LED,所以我们可以保持该数为0。下面,需要确定何时LED关闭。我们可以使用system_get_random_data()来创建随机字节,并且将其与最大的数4096相乘。这样的问题是LED明亮变化太随机,所以让它看起来不太像火炬。所以我使用2048,并且添加了一个随机字节8。最终的代码如下:





下一步是将其发送到I2C总线:



现在你需要为每个LED创建一个for循环。
实现蓝牙互联
我仅仅想让套件上我需要的设备点亮,而且不想每次都配置。Bluetooth可以“bond”,就是记住配置,所以两个设备可以自动连接。 “bond”过程比较复杂,但是BGM111模块帮你处理了这些。 首先,我们需要确定我们能够连接,使用命令:
call le_gap_set_mode(0,2)
 
这可以使设备能够连接,但并不一定能被发现。如果已经连接了这一设备,下面我们需要让连接自动化。因此我们需要稍微改变命令:
call le_gap_set_mode(1,2)
 
这让设备进入了有限的可被发现模式,最终,使用下列命令:
call sm_set_bondable_mode(1)
 
下面是设置按钮,以监测按钮的状态:








了解连接与断开连接
连接与断开连接是很重要的。BGScript使其很容易。当连接的时候,我们想让LED闪烁,所以我们需要做两件事情。首先,我们需要设置一个定时器,每隔数微秒调用一次。下面,当定时器被调用时,我们需要使用先前创建的LED程序。下面是如何创建定时器的代码:
callhardware_set_soft_timer(819,TIMER_PWM,0)
 
当定时器运作时,另一个事件将会发生:
eventhardware_soft_timer(handle)
 
现在使用if循环,我们可以让板子闪烁起来:





因为仅有一个设备将被连接,我们可以关闭其他设备了。首先,停止定时器。代码如下:
callhardware_set_soft_timer(0,TIMER_PWM,0)
 
下面,需要调用相同的闪烁代码:


当连接完成,Silicon Labs的模块不再接受连接,你需要决定是否接受连接。我们不想这样,所以我现在需要重新使能,这样当我到办公室的时候,可以重新连接。我使用如下代码:
call le_gap_set_mode(0,2)
 
最终我们可以开始烧录设备了,你可以在GitHub上找到代码。

授权代理商:世强先进(深圳)科技股份有限公司
技术资料,数据手册,3D模型库,原理图,PCB封装文件,选型指南来源平台:世强硬创平台www.sekorm.com
现货商城,价格查询,交期查询,订货,现货采购,在线购买,样品申请渠道:世强硬创平台电子商城www.sekorm.com/supply/
概念,方案,设计,选型,BOM优化,FAE技术支持,样品,加工定制,测试,量产供应服务提供:世强硬创平台www.sekorm.com
集成电路,电子元件,电子材料,电气自动化,电机,仪器全品类供应:世强硬创平台www.sekorm.com
  • +1 赞 0
  • 收藏
  • 评论 3

本网站所有内容禁止转载,否则追究法律责任!

评论

   |   

提交评论

全部评论(3

  • Jerry65 Lv5. 技术专家 2017-12-27
    好东西,多多学习。。。
  • 大欢哥 Lv7. 资深专家 2017-12-14
    学习了
  • 一头笨牛 Lv8. 研究员 2017-11-04
    学习
没有更多评论了

相关推荐

【技术】快速、安全、有效地设计低功耗蓝牙信标的三大考量

硬件、软件、电池寿命这三大考量让你的蓝牙信标设计事半功倍。

技术探讨    发布时间 : 2019-07-23

认识小型、功能强大的蓝牙智能模块

物联网的发展让蓝牙无线设计也愈来愈火,特别是新一代低功耗蓝牙无线连接协议,更是广泛受到开发商的关注。有鉴于此,本文基于芯科科技 “蓝牙设计脉动”专栏,介绍行业最新的蓝牙无线技术,以及Silicon Labs的蓝牙解决方案和相关设计信息。

技术探讨    发布时间 : 2019-07-02

【经验】支持3线PTA的Bluetooth SDK,解决蓝牙与WIFI共存难题

在设计蓝牙产品时不可避免的要与WIFI一同使用,由于蓝牙与WIFI都是2.4GHz的频段,如何解决同频干扰是我们不得不面对的一个难题。Silicon Labs提供的Bluetooth SDK从V2.6.0版本开始引入了3线的PTA,可以解决蓝牙与WIFI共存的难题。Bluetooth SDK适用于Silicon Labs EFR32BG与EFR32MG系列的无线蓝牙SOC产品。

设计经验    发布时间 : 2018-06-12

【IC】芯科最新推出全球最小的新型蓝牙SoC,CSP封装小至2.3x2.6毫米,有助于简化开发流程

芯科科技近日宣布推出xG27系列蓝牙片上系统(SoC),包括用于蓝牙连接的BG27和支持Zigbee及其他专有协议的MG27,该SoC是专为极小型物联网(IoT)设备设计的新型集成电路系列产品。

新产品    发布时间 : 2023-03-16

N8900U硬解码芯片置于网红毛绒玩具,标准UART异步串行接口,支持蓝牙5.0协议、FM、录音等

网红毛绒玩具唱歌、扭扭且能录音的语音方案,是一项集娱乐、互动与个性化于-体的创新设计。玩具内部配备九芯电子N8900U蓝牙模块。N8900U蓝牙模块是一个提供多功能集合一体的,蓝牙解码芯片,完美的集成了MP3、WAV的硬解码芯片,支持蓝牙5.0协议、FM、录音等,存储器支持TF卡驱动、flash,U盘支持电脑直接更新存储器的内容,支持FAT16、FAT32文件系统,支持flash,TF卡,U盘。

应用方案    发布时间 : 2024-10-31

要在电路板上增加蓝牙功能,都需要什么器件?

如果使用蓝牙SoC EFR32BG1xx系列,芯片电源部分需要电感(使能DC-DC)、退耦电容,射频链路1个电感、一个电容,陶瓷天线或者PCB板载天线。如果用蓝牙模块BGM11x,可预留串口和电源接口。

技术问答    发布时间 : 2017-09-15

【IC】芯科科技BG27蓝牙SoC赢得IoT Evolution World评选2024年资产跟踪产品奖

SILICON LABS的BG27蓝牙SoC近期荣获IoT Evolution World网站举办的2024年资产跟踪产品奖。该奖项旨在表彰利用物联网技术实现资产跟踪功能自动化的卓越创新,以提高效率、减少盗窃或优化资产利用率。

产品    发布时间 : 2024-06-19

SiWG917 SoC Single Chip Wi-Fi® and Bluetooth® LE Wireless Secure MCU Solutions

型号- SIWG917M100MGTBA,SIWG917M121XGTBA,SIWG917,SIWG917M111XGTBA,SIWG917M110LGTBA,SIWG917M111MGTBA,SIWG917M141XGTBA

数据手册  -  SILICON LABS  - Revision 0.7  - September, 2024 PDF 英文 下载

蓝牙可以应用到哪些领域?

蓝牙应用非常广泛,低功耗、广播模式、支持蓝牙5.0、支持UART接口是BLE蓝牙模块或SOC的基本特征,目前蓝牙已经广泛应用于定位标签,资产跟踪,运动及健身传感器,医疗传感器,智能手表,遥控器,玩具等产品中,更多蓝牙模块应用选型可直接在平台搜索查阅。推荐查阅“EFR32无线通信模块优选器件方案”,基于Silicon Labs 蓝牙SOC设计的通信模块,支持蓝牙多协议,zigbee,thread,sub-G,私有协议等。https://www.sekorm.com/doc/808561.html

技术问答    发布时间 : 2018-11-07

一篇文章告诉你蓝牙智能门锁怎么实现!

这个方案教你设计能远程操纵开门锁门的蓝牙智能门锁,好方便,好安全!

器件选型    发布时间 : 2016-04-22

BGM111 Wireless Gecko Bluetooth® Module Data Sheet

型号- BGM111,SLWSTK6101C,BGM111A256V2R,BGM111A256V21,BGM111A256V2,BGM111A256V21R

数据手册  -  SILICON LABS  - Rev. 1.9  - February, 2024 PDF 英文 下载 查看更多版本

开发BGM111低功耗蓝牙模块,需要哪些软件和工具的支持?

开发BGM111低功耗蓝牙模块有两种设计方式:第一种设计方式是有外部MCU的NCP模式,可以安装BGTool软件。这个软件可以在电脑端模拟一个MCU功能,通过串口发送控制命名驱动BGM111模块。并实时显示串口与BGM111之间所有的交互数据,可以拷贝出来,作为用户自己的项目编程使用。第二种设计方式是BGM111独立运行,这个模式下采用BGScript脚本语言来编程,可以安装BGTool软件。这个软件包含了BGScript脚本编译器。用于编译工程代码,生成bin文件。BGScript编程时无需特殊的编程工具,任何文本编辑工具都可以使用。BGTool软件(BGScript Development)的下载链接:www.sekorm.com/doc/49625.html

技术问答    发布时间 : 2016-11-23

在市面上看到蓝牙BLE的耳机,请问BGM111是否可以做蓝牙耳机应用?

不能,BLE协议特点是低功耗、低速率,蓝牙耳机的目前最低的音频采样率为44.1KHZ,目前市面上所有厂商的BLE蓝牙模块都达不到此速率。如果有支持BLE的蓝牙耳机,那么应该是双模的蓝牙产品,即支持蓝牙BLE,也支持传统蓝牙3.0协议或者2.1+EDRx协议,在传输音频数据方面使用的蓝牙传统协议;我们有专门适合音频的蓝牙芯片WT32i,蓝牙3.0协议,支持速率24mps,内置DSP音频解码器。

技术问答    发布时间 : 2016-10-25

Emerging Bluetooth LE Use Cases and Applications

型号- RS9116W,XG27,XGM210P,XG24,XGM220P,RS9116,XGM240P,XG22,XG21,XGM220S,XGM240S,XGM27

数据手册  -  SILICON LABS  - August 2023 PDF 英文 下载

RS9116 n-Link™ and WiSeConnect™ Wi-Fi® and Dual-Mode Bluetooth® 5 Wireless Connectivity B00 Module Solution

型号- RS9116 B00,RS9116W-SB00-B00-B24,RS9116W-SB00-B00-B2A,RS9116,RS9116W-SB00-B00-ABC,RS9116X-SB00,RS9116N-SB00-B00-B00,RS9116 - B0014,RS9116X-SB-EVK2

数据手册  -  SILICON LABS  - Rev 1.0.9  - December 2022 PDF 英文 下载

展开更多

电子商城

查看更多

品牌:SILICON LABS

品类:Bluetooth Module

价格:¥61.3217

现货: 100

品牌:SILICON LABS

品类:Blue Gecko Bluetooth ® Module

价格:¥60.2765

现货: 67

品牌:SILICON LABS

品类:Bluetooth Module

价格:¥61.3217

现货: 0

品牌:SILICON LABS

品类:Wireless Gecko SoC

价格:¥8.1764

现货: 104,128

品牌:SILICON LABS

品类:Mighty Gecko Multi-Protocol Wireless SoC

价格:¥27.0929

现货: 90,767

品牌:SILICON LABS

品类:Wireless SoC

价格:¥35.3989

现货: 77,507

品牌:SILICON LABS

品类:Wireless Gecko SoC

价格:¥10.4994

现货: 61,779

品牌:SILICON LABS

品类:Wireless Gecko SoC

价格:¥11.5212

现货: 59,367

品牌:SILICON LABS

品类:Wireless SoC

价格:¥25.6438

现货: 49,208

品牌:SILICON LABS

品类:Wireless SoC

价格:¥16.8169

现货: 16,220

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

现货市场

查看更多

品牌:QUALCOMM

品类:蓝牙芯片

价格:¥4.9500

现货:109,413

品牌:汇顶科技

品类:蓝牙系统级芯片

价格:¥4.5000

现货:53,089

品牌:Telink

品类:2.4G蓝牙芯片

价格:¥7.5000

现货:24,000

品牌:涂鸦

品类:蓝牙模块

价格:¥7.7000

现货:9,980

品牌:RENESAS

品类:MCU

价格:¥4.6560

现货:8,299

品牌:SKYWORKS

品类:RF front-end integrated circuit

价格:¥1.8500

现货:5,897

品牌:Nordic Semiconductor

品类:IC

价格:¥13.5000

现货:5,700

品牌:NXP

品类:蓝牙无线微控制器

价格:¥19.8179

现货:5,539

品牌:利尔达

品类:Linux核心板

价格:¥448.0280

现货:3,300

品牌:BES

品类:IC

价格:¥3.2576

现货:2,550

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

服务

查看更多

物联网天线方案设计/虚拟天线芯片方案设计

Ignion可支持多协议、宽频段的物联网天线方案设计,协议:Wi-Fi、Bluetooth、UWB、Lora、Zigbee、2G、3G、4G、5G、CBRS、GNSS、GSM、LTE-M、NB-IoT等,频段范围:400MHz~10600MHz。

最小起订量: 2500 提交需求>

蓝牙射频及通信协议测试

根据用户的蓝牙模块,使用Bluetooth 蓝牙测试装置MT8852B,测试蓝牙1.0至5.1,包括传输速率、功率、频率、调制和接收机灵敏度,生成测试报告。支持到场/视频直播测试,资深专家全程指导。

实验室地址: 深圳 提交需求>

查看更多

授权代理品牌:接插件及结构件

查看更多

授权代理品牌:部件、组件及配件

查看更多

授权代理品牌:电源及模块

查看更多

授权代理品牌:电子材料

查看更多

授权代理品牌:仪器仪表及测试配组件

查看更多

授权代理品牌:电工工具及材料

查看更多

授权代理品牌:机械电子元件

查看更多

授权代理品牌:加工与定制

世强和原厂的技术专家将在一个工作日内解答,帮助您快速完成研发及采购。
我要提问

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

研发客服
商务客服
服务热线

联系我们

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

投诉与建议

E-mail:claim@sekorm.com

商务合作

E-mail:contact@sekorm.com

收藏
收藏当前页面