树莓派 Pico 和树莓派 Pico W 是先后发布,后者在前者基础上增加了英飞凌的 CYW43439 无线芯片,虽然该芯片同时支持无线网络和蓝牙,但树莓派基金会表示目前还没有启用蓝牙功能,未来可能通过固件更新来启用蓝牙。
如果要在 Pico 上支持蓝牙,比较简单的方法是通过外接一个 HC-05 模块来实现。本文将介绍具体方法,在树莓派 Pico 上使用 MicroPython 驱动 HC-05 蓝牙模块。
材料清单
树莓派 Pico
HC-05 蓝牙模块
面包板
跳线若干
LED
安装 MicroPython 固件
下载固件:https://micropython.org/download/rp2-pico/
1、按住 Pico 开发板上的 BOOTSEL 按钮,然后将 Pico 插入树莓派或 PC 的 USB 接口,然后松开 BOOTSEL 按钮。
2、Pico 会被识别为大容量存储设备。
3、将下载的 MicroPython UF2 文件放入 RPI-RP2 卷上。你的 Pico 将自动重启,然后 MicroPython 就开始运行了。
接线
HC-05 通过串口与开发板交互。下面是接线示意图,参考这个图将 Pico 和蓝牙模块连接好。
Vcc —> 3.3V 或 5V
GND —> GND
RX —> GPIO 0
TX —> GPIO 1
编程
将下面的代码保存为 mian.py 文件,保存在 Pico 磁盘的根目录。
#Diyprojectslab.com from machine import Pin, UART uart = UART(0, 9600) led = Pin(13, Pin.OUT) while True: if uart.any() > 0: data = uart.read() print(data) if "on" in data: led.value(1) print('LED on \n') uart.write('LED on \n') elif "off" in data: led.value(0) print('LED off \n') uart.write('LED off \n')
安装串口蓝牙终端
在手机上安装 Serial Bluetooth Terminal 这款 APP,用来测试蓝牙数据交互:开关灯的命令从 Android 手机发出,树莓派 Pico 收到每条命令之后,相应地打开或关闭 LED。