用于BLE的STMicroelectronics开发工具
在竞争性芯片中,凭借独特的开发工具和没有应用嵌入式微控制器的独立解决方案,使自己从竞争中脱颖而出。需要一个外部微控制器,并通过SPI总线与BLUENRG-MS通信。 BlueNRG电流消耗是一个很好的...
在竞争性芯片中,凭借独特的开发工具和没有应用嵌入式微控制器的独立解决方案,使自己从竞争中脱颖而出。需要一个外部微控制器,并通过SPI总线与BLUENRG-MS通信。
BlueNRG电流消耗是一个很好的工具,它允许您可视化哪些参数对功耗影响最大。例如,如果我们每100毫秒公布10字节长的数据,或每200毫秒公布20字节长的数据,对于相同的数据速率,电流消耗的差异约为40%。
但是,如果数据很少变化,10秒就足够了,电流消耗将减少98%。
该应用程序允许您模拟所有配置:扫描、广告、从模式或主模式下的连接、广告通道数、晶体精度以及特殊兴趣组(SIG)指定的所有计时。因此,在输入编程细节以优化之前,必须充分指定应用程序需求,并了解每个规范的电流消耗后果。无论最终设计的产品是什么,这个工具都可以帮助您决定权衡。
因为在编写嵌入式编程固件时,开发和测试他们的硅可能会很繁琐,所以提供了使用Python的选项。名为BlueNRG GUI的软件与USB加密狗配合使用,可以按P/N订购。
选项卡脚本允许您启动Python脚本。
用户手册UM2058中解释了所有特定的Python命令。
在安装BlueNRG GUI软件时,提供了许多Python脚本示例。让我们解释一下下面显示的脚本。
程序的开始是一个设置。重置硬件,然后进行模式配置。有四种模式可用。由于我们只需要一个连接作为从连接,因此需要选择模式2。公共广播必须定义为在一般广告中,有效载荷始终包含广告设备地址的6个字节。地址可以作为参数输入,但这是可选的。在没有参数的情况下,Python脚本自动决定地址。通过底部的窗口,我们可以访问原始数据包和每个字节的含义。双击会弹出一个窗口,显示原始数据包。在我们的例子中,地址是0x0280E1008BC5。
发射功率电平等于-2 dBm,如启用高功率、功率放大器电平和发射功率之间的对应表所示。
GATT和GAP被初始化,GAP作为外围设备。然后将服务设置为返回服务句柄并在服务内添加特征的主服务。每个函数的参数都是自解释的。所有细节都可以通过BlueNRG GUI或用户手册UM1865获得,如下面的add特性所示。
有一个可选的扫描响应,广告可发现参数用本地名称“test”写入。
脚本运行时,可以使用嗅探器监视BLE设备发送的数据包。
在AdvData部分,验证发送的数据与代码匹配。有效载荷具有以下含义:
-02 01 06:2字节;对于标志01,不支持经典蓝牙和BLE的通用可发现模式
-05 08 74 65 73 74:5字节;缩写为“test”
-05 12 06 00 08 00:5字节;标志12表示从属连接内部范围,最小值和最大值等于我们调用ACI\u GAP\u SET-DISCOVERABLE函数时的参数
-02 0A FE:2字节表示标志0A(传输功率),FE表示2dbm
我们确认这些是在代码中输入的值。
最后,我们等待连接,在无限循环中,生成一个随机数,更新特征值,系统休眠1秒。脚本只需要上传到蓝色NRG GUI中,然后您可以按下“运行脚本”按钮。
一旦Python脚本满足要求,就可以编写嵌入式程序并利用ST生态系统。事实上,BlueNRG还配备了一个Arduino防护罩,可以直接插入到。是cortex M微控制器的领导者,这得益于其STM32的大家族。
Python脚本、USB加密狗、可轻松插入微控制器板的Arduino板和电流消耗模拟是使您能够快速高效地开发应用程序的关键工具。