微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI无线射频设计 > 用哪个库文件编译CC2540带PTM的量产版代码

用哪个库文件编译CC2540带PTM的量产版代码

时间:12-23 整理:3721RD 点击:

 

我这有一个关于用于量产PTM测试时库文件选用的问题。

 

项目概括:

1. HW:CC2540

2. BLE stack:v1.3

3. 应用:BLE peripheral

 

需求: 在量产的功能软件中加入PTM,用GPIO控制,缺省为低进入功能模式,将GPIO拉高进入PTM模式

 

编译时选择BLE-CC254x-1.3\Projects\ble\Libraries\CC2540DB\bin\CC2540_BLE_peri.lib 以及 BLE-CC254x-1.3\Projects\ble\Libraries\Common\bin下的一个库文件时有以下问题:

1. 用CC254x_BLE_HCI_TL_None.lib, 功能正常,但不能进入PTM模式

2. 用CC254x_BLE_HCI_TL_PTM.lib, PTM正常,但正常功能异常

3. 用CC254x_BLE_HCI_TL_Full.lib,编译错误,有没有定义的函数,但我从developer guide中看到,是应该用这个库文件的

 

请帮忙!急,等着上工厂调试!谢谢!

 

-LSY

 

 

 

HI Shuyu,

不清楚为什么你要换lib, 正常情况下是不需要更换lib文件的, 1.2版本以后的协议栈都支持PTM. PTM目的只是为了把UART口暴露出来给测试仪.

Hi Yan ,

 

是否应该用CC2540_BLE.lib和CC254x_BLE_HCI_TL_Full.lib?

 

谢谢!

 

-LSY

工程自带的lib文件应该就可以. 1.2以后的lib文件应该能通过GPIO口拉电平进入PTM模式了.

Hi, Yan,

我们也遇到了这个问题。

wiki上确实说,“1.2版本以后的协议栈都支持PTM”,但是我们试过了,在1.3版本上,在options->c/c++ compiler->preprossor上增加以下宏:

HCI_DISABLE_UART,HAL_UART,HAL_DMA=TRUE。编译连接后,连接有以下警告:

Warning[w52]: More than one definition for the byte at address 0x6b in common segment INTVEC. It is defined in module "hal_uart" as well as in module

并且,烧录后,UART也不能工作。

后来,我看到在source code 的 Libraries/common/lib下存放着三个库文件:

CC254x_BLE_HCI_TL_Full.lib,CC254x_BLE_HCI_TL_None.lib,CC254x_BLE_HCI_TL_PTM.lib。

我们的上面默认的是使用的..._TL_None. 所以我试了下带PTM的,确实能用(进入PTM模式,即PTM能工作起来),但上面的警告依然会有,

而且,进入正常的工作模式,会死掉。

你有遇到过这样的问题吗?

或者,正如你说所的,不用换库,就能工作在正常模式和PTM模式,只需要用一个GPIO口的拉高拉低就行,你是怎么配置的?

求解!谢谢!

用的是KeyFob工程

Hi TonyBie,

要用PTM的话相应的代码也需要修改, 不知道你参考过TI的wiki没有?

http://processors.wiki.ti.com/index.php/PTM#How_to_use_Production_Test_Mode_.28PTM.29_on_the_CC254x

Thanks,Yan。

Yes, IT WiKI is just what I am always refering to .

so now the issue is resolved.

Hi, Yan,

我有另外一个问题,请教下:

由于货源的问题,需要用2541替代。

使用的是1.3版本,之前用的是keyfob工程下的CC2540DB,现使用CC2541DB,去掉了两个宏

ACC_BMA250
DC_DC_P0_7

编译,下载都没有问题,但是不能正常使用。跟踪了下:key的中断都没有响应,这是什么原因?

之前,使用CC2540DB是没有问题的。

芯片是直接在原来2540的板子上,换成2541,看了下原理图,是PIN对PIN的,只有2540的1~4脚是USB功能,接的地,而2541的是作I2C的处理,我们也都把他们接地了,不知道是不是这个的影响。

两个是pin to pin的, 只是2540是uart, 而2541是i2c.

但是应该不是这个影响. 可能是你把 DC_DC_P0_7 定义取消了的影响. 请保留这个定义再试一下.

请问ptm测试不用测试仪器是否可以,我想根据wiki所说用电脑给待测试板子发送命令来进行测试。

另外不知道Tonybie是如何进入ptm测试的,库文件是否需要改动?我现在怎么也进入不了PTM,即我通过电脑串口给待测试板子,串口没有回应。

ptm目的就是为了暴露uart口去做产线测试, 这个暴露出来的uart口就是让专门仪器去控制芯片做测试的, 你用pc去控制下命令也行,pc也只能做到发命令而已,  但是最终的测试还是需要专门仪器的, 比如Anritsu 的 MT8852B.

hi, 

库文件要改为带PTM的,另外,代码也要做些修改。

Hi TonyBie:

我这边遇到的情况跟你描述的一样,我是按照wiki修改的,但PTM模式和正常工作模式无法兼容。请教下,你是怎么解决的?谢谢!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top