低功耗蓝牙芯片-QN9021
不是前段时间我在想如何捣鼓蓝牙嘛,所以从隔壁的论坛看见了便宜的蓝牙模块,就顺便购买了几块QN9021的板子。前面用CC2541倒腾的可以看:基于Blinker的ESP8266+CC2541蓝牙接入以及其他
看卖家描述写的是蓝牙四轴无人机主板,我想大概就是个小玩具那种,室内玩的穿越机。除了嵌入的QN9021还有大气压的传感器。
当然,博客里面也有很多篇内容是讲的德州仪器的CC254X的,相对于这些芯片来说,区别就在于:
【昆天科BLE】芯片篇0这篇文章中对,CC254X,QN902X,NODRDIC的51822,市面上常见的蓝牙模块(那个时候)做了简单的归纳总结,我就完全照搬了,当然在这每篇文章里面我也写了完整的信息:
与NODRDIC的51822和TI的CC2540不同QN902X的架构是M0+ROM+FLASH+SRAM的方式,其中ROM放的是蓝牙协议和内部一个小的调度核,FLASH放的是用户程序和数据,RAM用于跑程序。其中ROM:96K,SRAM:64K,FLASH:64K/128K。因为QN902X程序是跑到SRAM中,所以它的深度睡眠电流比较大些。
外设方面:
模拟外设:4通道10位ADC,电池监控及温度传感器,2路模拟比较器
定时器:4个通用定时器,1个看门狗定时器,1个RTC,2路PWM
通信接口:2个SPI,2个串口,至多31个GPIO
时钟:高速可以16M或32M,可使用外置或内置的32.768K
RF性能:
接收灵敏度:-96dBm
发射功率:-20dBm-4dBm
电气特性:
2.4-3.6V供电
内部集成DC-DC
1.5uA深度睡眠(较大,因为程序是在SRAM里运行)
不使用DC-DC时:
RX:13.6mA@3V
TX:12.8mA@0dBm&3V
使用DC-DC时:
RX:8.9mA@3V
TX:8.6mA@0dBm&3V
QN9021是恩智浦收购昆天科(Quintic)开发的。所以带有NXP也是可以理解的。
网上的资料是比较多的,虽然感觉还是比隔壁德州仪器差了一点。
其他地方的一些有意义的资料:
我捡的破烂是这个样子的,实物其实很小一块,挺精致,集成度算高了:
背面是这个样子的:
换个方向:
但是网上看了一圈没找到一模一样的模块,不知道引脚定义,虽然标出来了一些但是懒得去试了,想着还是拆开看背面。
先把左边碍事的充电接口拖掉:
热风枪就行了:
用热风枪取下来后是这样的。板子的引脚全部标清楚了,这就很方便了。
官方SDK
QN902X: 超低功耗Bluetooth LE片上系统解决方案
先安装一下:
官方提供的资料的文件夹,每一个例程都分别使用KEIL和IAR写的,非常好:
Tools:
- QTool 配合Qdongle在PC上做BLE的开发的调试工具。
- QnISPStudio QN902x系列的串口烧写工具
- QnNVDSConfigurator QN902x系列的NVDS(Non Volatile Data Storage)烧写工具。
- QnDriverTools QN902x系列的复用引脚配置工具
- QnDevDBforDevelop 开发环境的MCU DB库建立工具
Document:
- Hardware Doc 硬件相关文档
- Software Doc 软件开发相关文档和教程
Project:
- BLE Example 蓝牙项目例程
- Driver Example 裸驱例程
用Keil4比较省事,剩下的事就是软件的事了。
板载的传感器
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。