新闻  |   论坛  |   博客  |   在线研讨会
Nordic nRF52/nRF51 开发流程说明
Hzeen | 2019-03-29 11:51:32    阅读:364   发布文章

Nordic nRF52系列包括nRF52832/nRF52840/nRF52810/nRF52811等芯片,nRF51系列包括nRF51822/nRF51422/nRF51802等芯片,开发者可以按照如下流程去评估和开发nRF52/51应用解决方案
如果你英文比较好的话,建议直接阅读Nordic官方的“nRF5 Getting Started”:https://www.nordicsemi.com/DocLib/Content/User_Guides/getting_started/latest/UG/gs/product_development,介绍得非常详细,我下面的文章也是在该文基础上加工整理而得。
1.    第1步:芯片选型评估,选择适合你的芯片型号。
1.1 粗略选型
首先大家可以快速浏览如下网页内容:https://www.nordicsemi.com/Products/Low-power-short-range-wireless/Bluetooth-low-energy,以对Nordic每个芯片的最主要特性有个大致了解,下面为页面部分截图:



上面是Nordic低功耗蓝牙产品横向对比页面,如果你需要看Nordic其他解决方案,比如Zigbee或者蜂窝网IoT,请参考如下页面:


1.2仔细查看芯片具体参数
这个主要通过查阅nRF51/52 spec来实现的。nRF52系列芯片都只有一份spec,spec包含了芯片外设模块功能概述,电气特性参数,应用参考电路,封装和订购信息等内容,请注意电气特性放在每一个外设模块章节的最后面。nRF51系列芯片共用同一份参考手册,同时不同的型号还有各自的一份独立数据spec。参考手册主要描述各外设模块的功能及原理,spec则具体罗列本型号的电气特性参数,应用参考电路,封装和订购信息等。Nordic有一个文档库,你需要的任何文档都可以在这里找到,文档库链接为:https://www.nordicsemi.com/DocLib,界面如下所示。nRF52/51芯片spec就可以在文档库中下载。


比如,选择“nRF52840 Core Documentation”,界面将如下所示。跟nRF52840有关的大部分文档,都在这里,红色圈起来的就是52840的芯片spec。



nRF52系列其他芯片以及nRF51系列芯片spec都可以用同样的方法获得,这里就不一一列举。
2.     第2步:选择SDK版本号以及相应的协议栈类型和版本。
推荐使用最新版的SDK以及SDK自带的协议栈,nRF52系列产品开发推荐使用nRF5 SDK 15.3.0,nRF51系列产品开发推荐使用nRF5 SDK 12.3.0。SDK官网下载地址为:https://www.nordicsemi.com/Software-and-Tools/Software/nRF5-SDK/Download#infotabs。至于协议栈,一般推荐SDK安装目录里面自带的协议栈,这个兼容性好,开发最简单。不过有时在Nordic官网下载SDK的时候,比如SDK15.2.0,官网会自动绑定一个比SDK安装目录里面自带的协议栈版本更高版本的协议栈,那么这个时候推荐使用该绑定的高版本协议栈,原因如下:
再完美的协议栈难免也会有bug,此时Nordic会把bug修复的协议栈单独发布出来,比如nRF5 SDK 15.2.0自带的S140协议栈版本为6.1.0,一般来说,直接用这个版本的协议栈就可以了,但是这个版本的协议栈的主机模式有一个小bug,为此Nordic单独发布了6.1.1版S140协议栈,此时用户就需要去官网单独下载这个最新版的协议栈了。记住,大家只需要下载版本号数字最后一位有变化的即可,比如6.1.1相比6.1.0,最后一个数字有升级,那么推荐大家直接下载下来,然后覆盖原来老的协议栈即可。如果版本号第1个数字就有变化,意味着两个版本的协议栈是不兼容的,此时一般SDK也会跟着升级的,比如7.0.0相比6.1.0,这个就属于大升级了,此时建议直接使用与之配套的最新版本SDK来进行开发,而不是把协议栈进行简单覆盖。(当然,你也可以自己把7.0.0的协议栈移植到老SDK中,这个稍微麻烦一些,不过Nordic也有相关移植文档供大家参考)。如下列出了常用协议栈的发布页面:
  • S140协议栈最新版本查询页面:https://www.nordicsemi.com/Software-and-Tools/Software/S140/Download#infotabs

  • S132协议栈最新版本查询页面:https://www.nordicsemi.com/Software-and-Tools/Software/S132/Download#infotabs

  • 其他类型协议栈,比如S130, S112,S110等,请按照上述方式自己去寻找相应下载页面。

大部分用户使用Nordic产品的时候都会使用Nordic协议栈,而协议栈是会占用一定的Flash,RAM以及某些外设模块的,大家评估的时候一定要把协议栈占用的资源扣除,然后再评估剩下的资源够不够用。而且开发Nordic产品的时候,经常需要跟协议栈打交道,因此强烈建议大家读一下协议栈spec,以大致了解Nordic协议栈的原理以及一些关键性能参数,如下为Nordic各种协议栈spec下载页面:



欲进一步了解SDK和softdevice请参考:Nordic nRF5 SDK和softdevice介绍
3.    第3步:申请Nordic nRF52/51官方开发板(Development Kit,DK)
Nordic绝大多数例子都是在nRF51/52官方开发板上开发和测试的,手上有nRF51/52开发板将大大方便软件工程师的开发。nRF51/52开发板也可以作为参考板来排查用户板问题。在生产测试的时候,nRF51/52开发板还可以作为gold sample去测试用户板的射频性能是否合格。最后,nRF51/52开发板还带一块正版Jlink芯片,也就是说nRF51/52开发板本身就是一个Jlink烧写器,不仅可以用来烧写板子上的nRF51/52芯片,还可以用来烧写其他用户板上的Jlink芯片。一个正版Jlink烧写器在淘宝上售价为1000人民币左右,而Nordic nRF51/52开发板官方售价才39美金,正可谓“价格厚道,感动人心”。(PS:如果你拿到Nordic nRF51/52官方DK的话,你会发现Nordic DK做工是业界最好的,没有之一!)
  • nRF52832/nRF52810共用同一块开发板,编号为PCA10040,DK购买链接为:https://www.nordicsemi.com/About-us/BuyOnline?search_token=nRF52-DK。DK说明文档请参考前面的“nRF52832 Core Documentation”,nRF52810额外说明文档链接:https://www.nordicsemi.com/en/DocLib/Content/SDK_Doc/nRF5_SDK/v15-2-0/nrf52810_user_guide。

  • nRF52840开发板编号为PCA10056,DK购买链接为:https://www.nordicsemi.com/About-us/BuyOnline?search_token=nRF52840-DK,DK说明文档请参考前面的“nRF52840 Core Documentation”。除了DK,nRF52840还有一个dongle也可以用来做开发,Dongle编号为PCA10059,购买链接为:https://www.nordicsemi.com/About-us/BuyOnline?search_token=nRF52840DONGLE。说明文档见“nRF52840 Core Documentation”。

  • nRF51开发板编号为PCA10028,DK购买链接为: https://www.nordicsemi.com/About-us/BuyOnline?search_token=nRF51-DK,DK说明文档请参考前面的“nRF51822 Core Documentation”

  • Nordic官方DK是长下面这个样子的,不要弄错了

芯片物料购买可联系:13823261387,企鹅:2355239035,黄工

4. ...
5. ...
6. ...
原址:https://www.cnblogs.com/iini/p/8994433.html


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客