CC2640做成产品在量产时如何测试RF性能?
各位大神,你们好!
我们有产品在量产,量产时如何测试最终产品的RF性能?
可以实现任意单一信道最大功率持续发射的模式?
Tom,
有两种方法,
1. 用SmartRF studio PC + XDS100V3 tool,进行直接控制,让CC2640进入continous TX, unmodulated 状态来进行不同channel, 不同output power测试;
2. 使用PTM, 用HCI command直控。具体参考下列link.
http://processors.wiki.ti.com/index.php/PTM_cc2640
很好。学习。
Hi Lian Lian,
量产时要测哪些参数?需要校频吗?如何校频?
有没有DUT mode,?信号强度,灵敏度和输出功率怎么测?
Tom,
自己做的话,可以先看看频偏和最大输出功率。 一般一批板子会抽些样品进行一次校频, 直连用频谱仪, span设到100kHz看看。中心频点就是你设置的那个,自动mark一下峰值。看频偏多少, output power多大。校频可以参考一下系列link, CC26可以用internal cap array, 但是范围有限, 可以参考下列link. 不够的话,还得借助外部cap.
http://processors.wiki.ti.com/index.php/CC26xx_Tips_and_Tricks
如果output power和你设置的相差较大的话,还需要用网络分析仪看看匹配。尽量照抄TI参考设计吧。
如果你有蓝牙综测仪的话,可以咨询一下对应公司怎么用。会更方便一些。
如果需要过蓝牙认证,或者FCC, CE的话,有一些第三方可以专门帮助做。可以在蓝牙联盟官网上查查看。
DUT控制还是参考之前给的PTM和DTM即可。
Hi Lina Lian,
谢谢你的回复,我参照PTM链接,在DTM模式下使用MT8852B测蓝牙时还需要UART连接电脑
同时发送以下命令吗?
HCI_LE_Transmitter_Test
HCI_LE_Receiver_Test
HCI_LE_Test_End
- HCI Extension Modem Test Transmit
- HCI Extension Modem Hop Test Transmit
- HCI Extension Modem Test Receive
- HCI Extension End Modem Test
- HCI Extension Set BDADDR
- HCI Extension Set Tx Power
- HCI Extension Set Max DTM Tx Power
- HCI Extension Build Revision
- HCI Extension Reset System
我以前用8852时是不需要连接UART的,想确认一下。
Hi Lina Lian,
再追加一个问题,CC2640的mac地址是出厂时写好的,
量产时不需要再写入mac地址吗?
Regards
Jirong Liu ,
DTM 需要UART 来控制HCI, PTM不需要,自己写在里面就行。 wiki上有解释。
Jirong Liu ,
MAC出厂就有的,你可以用SmartRF Flash Programmer 2+ XDS100v3读出来,也可以在代码里读出来。SimplePeripheral例程里有。
如果你不想用原有的,你也可以自己写入自己的。
你好,
你可以有两种办法来写入你自己的蓝牙地址。
1.使用flash programmer 2来写入,如下图所示。
2.在代码中写入,
// Hard code the BD Address till CC2650 board gets its own IEEE address
//uint8 bdAddress[B_ADDR_LEN] = { 0xAD, 0xD0, 0x0A, 0xAD, 0xD0, 0x0A };
//HCI_EXT_SetBDADDRCmd(bdAddress);
希望对你有哦帮助啦。
|
1 2 3 4 5 6 7 8 9 |
|
你好。
这个函数我测试了下,发现只能在初始化的时候修改BleMac。在建立连接后,调用该函数进行修改BleMac是修改不了的。
我现在有一种方案,建立连接后手机端把要写的BleMac写入到CC2640Flash,然后重启读取保存BleMac的地方把MAC写进去。
但找不到读写Flash地址的函数API,能否提示下。
还有,有能量产写入MAC的方式吗?
Hi: kqian0327
我使用flash programmer 2将MAC地址写入,在程序中怎么将写入的地址读出来。谢谢,有没有API,谢谢!
如图,哪有写入。 除非在第二地址写入,然后在程序中read出来再写进去BLE MAC
恩,就是在第二地址写入,然后程序中该怎么读出来?
uint8 bdAddress[B_ADDR_LEN] = { 0x01, 0x16, 0x08, 0x08, 0x88, 0x88 }; // Hard code the BD Address till CC2650 board gets its own IEEE address memcpy((char *)bdAddress,(const char *)(0x0001FFd0),6); //0x0001FFd0-----这个地址是第二MAC地址存放处
HCI_EXT_SetBDADDRCmd(bdAddress);
恩,测了一下是好的。谢谢了!