MicroBlocks-关于BLE固件编译与调试

MicroBlocks-BLE固件

Posted by CWEIB on Saturday, November 26, 2022

MicroBlocks-关于BLE固件编译与调试

周六的时候,种瓜让我帮忙测试了MicroBlocks官方的VM中自带的ESP32-BLE的固件编译与测试,我们可以在官方的仓库中的platformio.ini文件中可以看到,MicroBlocks官方是带有ESP32-BLE的支持的,有了官方对指定的ESP-BLE固件的支持后,我们只需要通过命令(前提是搭建VSCode+PlatformIO环境):

pio run -e esp32-ble

对指定的固件进行编译就能生成出bin文件,编译完成后只需要点击上传到ESP32开发板中即可完成烧录(这里只讲述在VSCode+PlatformIO环境下的烧录方式,其他烧录方法和固件合并可以看我另外的博文),烧录完成后会自动对开发板进行复位,复位完成后开发板会进入初始化过程(过程大概10秒左右,基本可以忽略),在串口助手下可以看到具体信息: image 初始化完成后即可通过MicroBlocks平台对开发板进行串口的连接,这里我们如果想在MicroBlocks中去使用BLE UART server库的话,需要打开硬件编程平台,打开积木库中 Network->BLE UART server即可使用BLE的功能:

image

接下来就是愉快的将BLE功能耍起来拉,打开BLE UART server积木库后可以看到有start BLE USRT server MicroBlocks BLE UART server 这个积木块的功能是使ESP32广播出名称为 MicroBlocks BLE UART server的蓝牙热点(此积木也有提示是否有设备连接)

广播并等待连接的界面: 蓝牙广播并等待连接的界面 广播并已连接的界面: 蓝牙广播并已连接的界面

BLE Device connected积木块为显示广播出来的蓝牙热点是否已被了解(点击积木块会显示一个开关的UI,开和关的图表对于以连接和未连接两种姿态)

未连接的界面: BLE连接状态积木块-未连接 已连接的界面: BLE连接状态积木块-已连接

last BLE UART message积木块是获取设备ESP32写入的最后一次消息信息(这里需要注意,读取完成后将清除等待下次消息的写入)

未读取到消息的界面: 读取设备最后一次向ESP32写入的信息-未有信息界面 读取到消息的界面: 读取设备最后一次向ESP32写入的信息-读取到信息的界面

BLE UART write [hello]积木是ESP32通过蓝牙向所连接的设备写入消息,点击一次即可

手机接收到信息的界面: 手机上蓝牙连接与消息接收的效果

至此完成对固件的编译与BLE UART server积木库的所有调试