对于CC2640R2F IC,官方提供不同尺寸的芯片用以选择。在Datasheet能够知道这些尺寸。
对于这些不同的芯片尺寸,TI提供不同的核心板和开发套件用以开发。
参考设计 | 设计编号 |
---|---|
Bluetooth® low energy Beacons Reference Design | TIDC-BLUETOOTH-LOW-ENERGY-BEACONS |
CC2650EM-4XD Reference Design | CC2650EM-4XD-RD |
CC2650EM-4XS Reference Design | CC2650EM-4XS-RD |
CC2650EM-4XS-EXT-REG Reference | Design CC2650EM-4XS-EXT-REG-RD |
CC2650EM-5XD Reference Design | CC2650EM-5XD-RD Texas Instruments |
CC2650EM-7ID Reference Design | CC2650EM-7ID-RD Texas Instruments |
CC2650EM-MurBal Reference Design | CC2650EM-MURBAL-RD |
注意: 特别需要说明的是,以上不同的核心板设计在射频前端不太一样。主要是区分为内部偏置(Internal Bias)/外部偏置(External Bias) 和差分(Difference)单点(Single-End)射频接口,分别对应上面设计的4XD、4XS、5XD、7ID。
提示:X=External I=Internal D=Difference S=Single
芯片尺寸
主要是芯片大小、外设接口资源、IO数量上有差别;
射频前端
不同射频前端在核心模块的大小和器件上面给与灵活性,但是对应的射频性能(灵敏度、最大输出功率)也不太一样。
开发套件
IO对应不一样,外设资源,传感器不一样,官方默认SDK射频LaunchPad,但是提供了其他开发套件的开发移植。
推荐: 我们设计改良的开发板,完全兼容官方SDK。
明白了以上的芯片尺寸和射频前端,接下来就是修改支持LaunchPad+7*7 芯片尺寸默认工程到你手里硬件。TI已经保留了移植任何芯片尺寸和射频前端的接口。
参考simple_peripheral
选择APP工程。
Project->Opintions(Alt+F7)->C/C++ Compiler->Preprocessor->CC2640R2_LAUNCHXL 根据你实际的芯片尺寸修改以下配置宏:
器件编号 | 芯片尺寸 | 选择配置宏 | 编译的板级文件 |
---|---|---|---|
CC2640R2FRGZ | 7.00mm×7.00mm | CC2640R2_LAUNCHXL/CC2640R2DK_7ID | CC2640R2DK_7ID.h/CC2640R2_LAUNCHXL.h |
CC2640R2FRHB | 5.00mm×5.00mm | CC2640R2DK_5XD | CC2640R2DK_5XD.h |
CC2640R2FRSM | 4.00mm×4.00mm | CC2640R2DK_4XS | CC2640R2DK_4XS.h |
CC2640R2FYFV | 2.70mm×2.70mm | CC2640R2DK_CXS | CC2640R2DK_CXS.h |
// File="Project\source\ti\ble5stack\target\board.c"
// Line="60"
#if defined(CC2640R2DK_CXS) || defined (CC2640R2DK_4XS) \
|| defined (CC2640R2DK_5XD) || defined (CC2640R2DK_7ID)
#include "./cc2640r2em/cc2640r2em_board.c"
#elif defined(CC2640R2_LAUNCHXL)
#include "./cc2640r2lp/cc2640r2lp_board.c"
#elif defined(CC2640R2_RC)
#include "./cc2640r2rc/cc2640r2rc_board.c"
#else // unknown board
#error "***ERROR*** Invalid Board Specified! Please see board.h for options."
#endif
如果你是参考以上参考设计做的,基本上已经不要考虑射频部分,几乎是一一对应的。如果不是,根据以上对应的编译的板级文件
找到对应射频前端配置。
射频前端 | 配置宏 |
---|---|
差分/内部偏置 | CC2650EM_7ID |
差分/外部偏置 | CC2650EM_5XD |
单端(RFN)/外部偏置 | CC2650EM_4XS |
单端(RFP)/外部偏置 | CC2640R2DK_CXS |
注意:这里不再需要考虑前面的芯片尺寸,只需要考虑射频前端,通过注意单端射频接口区分RFN/RFP接口。
注意:官方SDK只支持还没有单端/内部偏置,可尝试参考Troubleshooting更改。
//File="Project\source\ti\ble5stack\boards\CC2640R2DK_4XS\CC2640R2DK_4XS.h"
//Line="110"
/*
* ============================================================================
* RF Front End and Bias configuration symbols for TI reference designs and
* kits. This symbol sets the RF Front End configuration in ble_user_config.h
* and selects the appropriate PA table in ble_user_config.c.
* Other configurations can be used by editing these files.
*
* Define only one symbol:
* CC2650EM_7ID - Differential RF and internal biasing
(default for CC2640R2 LaunchPad)
* CC2650EM_5XD - Differential RF and external biasing
* CC2650EM_4XS - Single-ended RF on RF-P and external biasing
* CC2640R2DK_CXS - WCSP: Single-ended RF on RF-N and external biasing
* (Note that the WCSP is only tested and characterized for
* single ended configuration, and it has a WCSP-specific
* PA table)
*
* Note: CC2650EM_xxx reference designs apply to all CC26xx devices.
* ==========================================================================
*/
#define CC2650EM_7ID
根据你实际硬件资源在,在对应的编译的板级文件
中修改驱动资源、IO资源。
我们要修改当前默认的LaunchPad+7*7 到4ID,只需要按照修改芯片尺寸修改芯片尺寸从CC2640R2_LAUNCHXL到CC2650EM_4XS,同时参考修改射频前端CC2640R2DK_4XS.h
文件修改宏CC2650EM_4XS
到CC2650EM_7ID
。
Q:
我购买的是模块,官方屏蔽罩不能确定射频前端?
我是软件工程师,不清楚什么叫前端?
A:
可以尝试使用SmartRFStudio 依次尝试,直接
参考ble_user_config.c/h
宏引用,修改。
文章所有代码、工具、文档开源。加入我们QQ群 591679055获取更多支持,共同研究CC2640R2F&BLE5.0。