上次我们聊了 BL602, 这次再来看看它的兄弟 BL70x - 同样分成 BL702/BL704/BL706 三款,差异似乎只有封装大小。
BL70x 同样是主打 BLE 5.0 的蓝牙 MCU, 但与 BL60x 系列的主要不同是把 WiFi 支持换成了 Zigbee 3.0 支持 - 于是造成这两个系列功能上有一定区别,并不能互相替代。(既有 WiFi 也有 Zigbee 支持的就是 BL616/BL618 系列,这个上次没提到。)相比 BL60x 比肩 RP2040 的 276KB RAM, BL70x 的内存大小直接砍半到了 132KB, L1 缓存也从 32KB 砍半到了 16KB。内存配置的缩水换来的是其他外设的功能提升,比如 MD5/SHA512 加密算法支持,USB2.0 FS ,百兆以太网(BL706 上的 EMAC) 甚至红外遥控。感兴趣可以看看它的 Datasheet。
熟悉嵌入式开发的朋友看到这里估计已经知道能拿它干什么了。这里举一个 BL70x 可能意想不到的用途:UART 串口模块。提到 UART/USB to TTL 模块大家第一个想到的可能是 CH340/FT232/CP2102 等等,但似乎还没看到基于 RISC-V 的串口芯片。事实上它真的能用,而且是隔壁 LicheePi 4A 的厂商,深圳矽速 (Sipeed) 的心头好。Sipeed 经常在自家产品中使用博流的 RISC-V SoC 作为串口模块 - 比如以极致低价著称的高云 FPGA 开发板 Tang Nano/Primer 系列 (BL702),还有笔者很喜欢的四合一调试器 SLogic Combo 8 (BL618, 眼尖的读者可能会发现它实际就是基于自家 M0P 模块的二次开发)。他们有一个 BL702 的开源固件在 https://github.com/sipeed/RV-Debugger-BL702 。
讲个题外话,笔者加入丁丑小队以来日常的测试工作基本都是用 SLogic Combo 8 作为 UART 调试器完成的,输出确实很稳定,目前还没遇到过诸如 CP2102 那样可能会被部分板子(eg. Duo S)烧掉的情况。它同时还可以搭配 sigrok 成为一个简单的开源逻辑分析仪,但笔者还没尝试。
说回支持矩阵,我们目前有测试的 BL70x 开发板同样只有一款 - Sipeed M0Sense,很难想象这样一块拇指大的小板子甚至还有个 8P FPC 屏幕接口。目前我们在它上面可以跑起来 FreeRTOS 和 RT-Thread,详细报告还请查看 https://matrix.ruyisdk.org/boards/M0sense/ 。
关于 BL70x 的故事还没讲完,我们下回分解
欢迎各位复现/吐槽丁丑小队的所有测试结果。
如果有对我们的测试方法/结果有任何建议/问题,欢迎直接在 GitHub 开 issue,或者在论坛 @ 我、回帖询问