wuyage

NXP BLE QN902x 之开发环境搭建

0
阅读(11401)

BLE是个很火热的东西,它广泛应用在各种可穿戴设备中。目前市场上生产BLE芯片的公司也有很多,比如

TI:CC2540、CC2541;CC2640

CSR:CSR1010、CSR1011;
Nordic:nRF8001、nRF51822;nRF51832

Dialog:DA14580,DA16580
Broadcom:BCM20732;
EM:EM9301、EM9601;
Cypress:CYBL10161-56

等等。。

本篇博客的主角不是以上芯片,而是NXP的BLE 芯片QN902x,包括QN9020和QN9012两款芯片,该芯片的datasheet在:http://cache.nxp.com/documents/data_sheet/QN902X.pdf?fpsp=1&WT_TYPE=Data%20Sheets&WT_VENDOR=FREESCALE&WT_FILE_FORMAT=pdf&WT_ASSET=Documentation&fileExt=.pdf

可以下载到。QN9020和QN9021的主要区别是封装不同,QN9020为QFN48(6x6mm),QN9021为QFN32(5x5mm)。QN902x的主要技术参数如下:

》Cortex- M0内核

》支持BLE4.1

》96Kb ROM,128Kb SPI Flash ,64Kb RAM 代码在RAM中执行

》最高工作频率32Mhz

》输出功率:-20~4dBm;接收灵敏度:-95dBm

》功耗:接收电流:9.25mA,发送电流:8.8mA ,sleep mode:3uA

所谓工欲善其事,必先利其器,想学习或者开发QN902x需要哪些东西呢?

1)开发板

官方的开发板为QN9020DK,官方链接为:http://www.nxp.com/zh-Hans/products/microcontrollers-and-processors/%E5%85%B6%E4%BB%96%E5%A4%84%E7%90%86%E5%99%A8/application-specific-mcus-mpus/bluetooth-low-energy-ble/a-highly-extensible-platform-for-application-development-of-qn9020:QN9020DK 

1.jpg

该开发板自带Jlink调试器,同时还配套有个USB BLE dongle,用来在PC机抓包使用。网上售价是42美元。

另外我发现在淘宝上还有一款价格便宜一点99元的开发板:https://item.taobao.com/item.htm?spm=a230r.1.14.1.zLgDgG&id=44438460336&ns=1&abbucket=8#detail

我就买了此款开发板,后续也以该开发板为基础做介绍。

2.jpg

2)软件

i) Keil 或者 IAR

ii)PL2303 驱动,板子上的USB转UART驱动。

iii)SDK:官方安装包,里面包括官方开发板的源代码和相关工具、文档。下载地址:http://pan.baidu.com/s/1mgkQF2K#path=%252FFireBLE%252FSource

iv)FireFly代码(P.s  这个代码是在官方SDK代码中修改的,如果使用的官方开发板则不需要这个)

以上资料到附件下载

QN902x 资料.rar


工具准备完毕后,下面介绍如何搭建开发环境,我们完成的目标是将LDE灯的代码下载到板子中。

1)将开发板通过USB线连接电脑,保证驱动正确安装。

1.jpg


2)安装SDK QBlue-1.3.5b.exe

安装到最后一步时,需要安装Device Database,需要选择好正确的Keil和IAR路径,这样Keil和IAR 就会支持QN9020 器件。

2.jpg


3)打开FireBLE\Driver\gpio 工程,这里以Keil为例,我们可以看到Device里已经包含了QN9020器件

2.jpg

然后编译一下,会生成gpio.bin文件


此芯片支持UART下载或者SWD下载,这里先介绍UART下载

4)双击桌面的Qblue 软件,弹出如下窗口

BLE.jpg

之后点击QnISPStudio ,会出现如下界面,我们选择好COM口和上一步生成的bin文件,然后点Start按钮

1.jpg

这时提示你需要按下板子的复位键

3.jpg

按下复位键之后程序就会下载进去了

P.s 关于下载也可参考:http://wiki.t-firefly.com/index.php/FireBLE/Firmware_upgrade


下载完成之后 我们就会发现D1灯在不断的闪烁。


http://www.21ic.com/eva/MCU/201606/678628.htm  偶然间看到这个文章,更加详细的介绍了如何入门QN902x