Nordic nRF51系列包括nRF51822/nRF51422/nRF51802等芯片,nRF52系列包括nRF52832/nRF52840/nRF52810等芯片,硬件工程师可以按照如下流程去评估和开发nRF51/52应用解决方案(虽然本文更多的是站在硬件工程师角度来阐述,但是很多章节对软件开发者也是适用的)
- 第1步:选型评估。这个主要通过查阅nRF51/52 spec来实现的。nRF52只有一份spec,spec包含了芯片外设模块功能概述,电气特性参数,应用参考电路,封装和订购信息等内容,nRF52 spec每一个外设模块章节前面是其功能概述,最后一节则是电气特性参数展示。nRF51参考手册和 spec是分开的,其中参考手册主要描述各外设模块的功能及原理,spec则用来描述电气特性参数,应用参考电路,封装和订购信息等。
- nRF51参考手册(reference manual):http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf51%2Fdita%2Fnrf51%2Fpdflinks%2Fref_manual.html&cp=3_2。
- nRF51822 spec(其他nRF51 spec链接与之相似,相信大家可以自己找到):http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf51%2Fdita%2Fnrf51%2Fpdflinks%2F51822_ps.html&cp=3_4_0
- nRF52832 spec:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf52%2Fdita%2Fnrf52%2Fchips%2Fnrf52832_ps.html&cp=2_1_0
- nRF52840 spec:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf52%2Fdita%2Fnrf52%2Fchips%2Fnrf52840_ps.html&cp=2_0_0
- nRF52810 spec:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf52%2Fdita%2Fnrf52%2Fchips%2Fnrf52810_ps.html&cp=2_2_0
- 第2步:申请nRF51/52开发板(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做工是业界最好的,没有之一!)
- nRF51开发板编号为PCA10028,DK购买链接为:http://www.nordicsemi.com/eng/Buy-Online?search_token=nRF51-DK
- nRF52832/nRF52810开发板编号为PCA10040,DK购买链接为:http://www.nordicsemi.com/eng/Buy-Online?search_token=nRF52-DK
- nRF52840开发板编号为PCA10059或者PCA10056(工程版),DK购买链接为:http://www.nordicsemi.com/eng/Buy-Online?search_token=nRF52840-PDK
- Nordic官方DK是长下面这个样子的,不要弄错了
- 第3步:电路设计。推荐按照nRF51/52参考电路来设计自己的电路,当然你也可以按照nRF51/52 DK(开发板)来设计自己的电路。这两种参考电路是等价的,而且都提供了完整的BOM表,原理图以及layout,供大家参考。
- nRF51参考电路:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf51%2Fdita%2Fnrf51%2Fpdflinks%2Fref_layout.html&cp=3_6
- nRF52参考电路:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf52%2Fdita%2Fnrf52%2Fpdflinks%2Fref_layout.html&cp=2_5
- nRF51 DK电路图:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf51%2Fdita%2Fnrf51%2Fnrf51_development.html&cp=3_1(注:在这个链接里面还有nRF51 dongle的电路图,nRF51 dongle使用了一个非常小的蛇形天线,如果你的板子空间有限,也可以参考nRF51 dongle来布线)
- nRF52832/52810 DK电路图:https://www.nordicsemi.com/eng/nordic/download_resource/50980/7/99707889/93935
- nRF52840 DK电路图:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf52%2Fdita%2Fnrf52%2Fdevelopment%2Fnrf52840_pdk%2Fkit_download_content.html&cp=2_0_3_2_1
- Nordic还提供了一些电路设计notes供大家参考:https://devzone.nordicsemi.com/tutorials/b/hardware-and-layout/posts/general-pcb-design-guidelines-for-nrf51-series
- 第4步:蓝牙射频性能调试。蓝牙射频性能最关键的三个影响因子:匹配电路调试,天线设计调试以及晶振选择,Nordic都有相应的指导文件。
- 匹配电路调试:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.whitepapers%2Fdita%2Fwhitepapers%2Fpdflinks%2Fnwp_013.html
- 天线设计:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.whitepapers%2Fdita%2Fwhitepapers%2Fpdflinks%2Fnwp_017.html
- 晶振选择:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.whitepapers%2Fdita%2Fwhitepapers%2Fpdflinks%2Fnwp_015.html&cp=11_11
- 第5步:电路图和layout review。Nordic或其代理商免费提供原理图和layout review服务,我们可以将原理图和layout提交到Nordic Devzone进行审核,一般1到2个工作日,Nordic工程师就能给予答复。电路图提交流程请参考文章(第3节:Nordic Devzone):Nordic官网/Infocenter/Devzone/Github简介。Devzone提交电路图review的界面是长下面这个样子的:
- 第6步:打板。如何贴片,Nordic也有相应的指导文件,目前Nordic芯片只有QFN,WLCSP和aQFN三种封装,相关贴片指导说明如下所示:
- QFN:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.appnotes%2Fdita%2Fappnotes%2Fpdflinks%2Fnan_400-08.html
- WLCSP:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.appnotes%2Fdita%2Fappnotes%2Fpdflinks%2Fnan_38.html
- aQFN:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.appnotes%2Fdita%2Fappnotes%2Fnan40%2Fnan40_intro.html&cp=10_0
- 第7步:RF测试。如果自己有专门的BLE测试设备,那么你可以自己来测试板子RF性能。如果你没有BLE测试设备,也没有关系,Nordic或其代理商免费提供BLE测试服务。只要把板子寄给Nordic代理商实验室,或者Nordic实验室,或者第三方实验室,比如R&S实验室,他们就能帮你完成BLE性能和符合性测试。你可以根据实验测试结果对板子进行二次整改。
- 跟Nordic DK通信距离比对测试。可以把HRM程序分别下载到Nordic DK和你的用户板中,然后分别连上手机,看看手机跟DK的通信距离有多远?再看看你的用户板跟手机通信距离有多远?如果两者差不多,说明你的用户板RF性能不错。HRM程序测试说明链接为:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk5.v15.0.0%2Fble_sdk_app_hrs.html&cp=4_0_0_4_1_2_13
- RF DTM测试设备端固件及测试说明:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.appnotes%2Fdita%2Fappnotes%2Fpdflinks%2Fnan_34.html
- 一般radio测试固件及测试说明:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk5.v15.0.0%2Fnrf_radio_test_example.html&cp=4_0_0_4_5_29
- 第8步:功耗测试。功耗测试可以参考如下链接:
- 功耗测试介绍:https://devzone.nordicsemi.com/tutorials/b/hardware-and-layout/posts/current-measurement-guide-introduction
- 功耗测试指南:https://devzone.nordicsemi.com/tutorials/b/hardware-and-layout/posts/nrf51-current-consumption-guide
- BLE理论功耗在线计算工具:https://devzone.nordicsemi.com/power/
- Nordic功耗测试标准例程及说明:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk5.v15.0.0%2Fble_sdk_app_pwr_mgmt.html&cp=4_0_0_4_1_2_20,固件代码在SDK开发包如下目录:<InstallFolder>\examples\ble_peripheral\ble_app_pwr_profiling。
- 第9步:勘误表自查。勘误表内容一般都是关于软件开发注意事项的,但不排除某些条目也跟硬件设计有关,所以正式定版之前建议自查一下勘误表,以防踩到“坑”
- nRF51822勘误表(PAN)(其他nRF51系列链接与之类似,相信你可以自己找到):http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf51%2Fdita%2Fnrf51%2Fpdflinks%2FnRF51822_pan.html&cp=3_4_1
- nRF52832勘误表(Errata):http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf52%2Fdita%2Fnrf52%2Ferrata.html&cp=2_1_1
- nRF52840勘误表(Errata):http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf52%2Fdita%2Fnrf52%2Ferrata52840.html&cp=2_0_1
- nRF52810勘误表(Errata):http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf52%2Fdita%2Fnrf52%2Ferrata52810.html&cp=2_2_1
- 第10步(可选):认证。根据产品需要,你可以去做BQB认证,SRRC认证,FCC认证,ETSI认证,环保测试等。像BQB认证,Nordic产品本身已经取得了相应QDID,你的认证是可以复用Nordic QDID的。
- Nordic QDID查询。输入网址:https://launchstudio.bluetooth.com/Listings/Search,在搜索框输入“Nordic Semiconductor”,即可搜出Nordic所有QDID。
- 环境报告:https://www.nordicsemi.com/eng/About-us/Corporate-Social-Responsibility/Environment
- nRF52 Material composition reports (MCR) and hazardous substance reports (HSR) 报告:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf52%2Fdita%2Fnrf52%2Fnrf52_env_reports.html&cp=2_7
- nRF51Material composition reports (MCR) and hazardous substance reports (HSR)报告 :http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf51%2Fdita%2Fnrf51%2Fpdflinks%2FnRF51_env_reports.html&cp=3_8
- 关于BT/ANT/FCC/ETSI认证,请参考Nordic说明文档:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.gs%2Fdita%2Fgs%2Fcertifying.html&cp=1_5
- 测试固件代码(与第7步:RF测试固件代码一样)。Nordic提供了两套射频测试固件,一套是DTM测试代码,符合蓝牙DTM标准,位于目录:SDK安装目录\examples\dtm\direct_test_mode,具体说明请参考:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk5.v12.3.0%2Fble_sdk_app_dtm_serial.html&cp=4_0_2_4_4;一套是Radio test测试代码,用于直接测试各个射频通道物理性能,比如频偏等,位于目录:SDK安装目录\examples\peripheral\radio_test,具体说明请参考:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk5.v12.3.0%2Fnrf_radio_test_example.html&cp=4_0_2_4_5_25。一般而言,需要测试丢包率的场合,推荐使用DTM测试代码,比如BQB认证和生产测试;只需简单测试射频通道载波频率以及频偏,推荐使用radio_test代码,比如SRRC认证。
- 第11步:搭建量产烧写环境。Nordic不提供量产烧写器,不过Nordic代理商或者淘宝网(推荐希尔特的编程器)都有相关量产用的烧写工具。其实,支持SWD接口的Jlink烧写器都可以用来烧写Nordic产品。虽然Nordic不提供量产烧写器,但是Nordic提供了一个量产烧写软件nrfjprog,nrfjprog有可执行文件,DLL库,Python接口等多种形式。
- 可执行文件nrfjprog,说明文档请参考:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.tools%2Fdita%2Ftools%2Fnrf5x_command_line_tools%2Fnrf5x_nrfjprogexe.html&cp=5_1_3。Windows环境下,当你安装nRFgo studio的时候,nrfjprog.exe会自动安装,其位于如下目录: 在Windows环境变量中添加上述目录后,在CMD中输入nrfjprog,你将会看到
- DLL nrfjprog,说明文档请参考:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.tools%2Fdita%2Ftools%2Fnrf5x_command_line_tools%2Fnrf5x_nrfjprogdll.html&cp=5_1_4
- Python nrfjprog,说明文档请参考:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.tools%2Fdita%2Ftools%2Fpynrfjprog%2Fpynrfjprog_lpage.html&cp=5_2
- 如果你不想使用nrfjprog,你可以参考这份white paper来编写自己的烧写软件:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.whitepapers%2Fdita%2Fwhitepapers%2Fnwp_027%2Fintro.html
- 第12步:搭建生产测试环境。一般来说,有2种生产测试方法:一是使用昂贵的专业设备来进行生产测试,比如Litepoint,Anritsu等,二是使用Nordic的nRF51/52 DK作为gold sample去测试DUT,成本低廉效果也不错。具体请参考Nordic application note:http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.appnotes%2Fdita%2Fappnotes%2Fpdflinks%2Fnan_34.html&cp=10_3(注:生产测试使用的固件还是前面提到的DTM固件!)
- 第13步:小批量试生产。重点观察产品一致性,良率和产能。
- 第14步:大批量生产。产品上市!