TI中文支持网
TI专业的中文技术问题搜集分享网站

2640加入串口后不能完全进入睡眠

问题如题,

1:cc2640加入串口,功耗不能完全进入睡眠,调试发现是由于调用NPI_uartRead();这个函数功能是读,定义的该函数地方看不到,只能看一个头文件,所以只要静止读的功能,功耗就可以降下去了,我猜测是该NPI_uartRead();函数的底层驱动没有写好导致,请各位TI大神验证一下,谢谢!

2:新发布的SDK修改了连接间隔会导致系统复位,连接间隔越大越频繁,0.83的SDK就不会有这个问题。

3:如何获取实时时钟。

4:处理睡眠的函数是哪一个,系统可以进入睡眠,但是不知道那一段代码是处理睡眠,我的项目要在睡眠前后控制一个IO口,谢谢! 

Barbara Wu:

1. UART的驱动实际上您是可以看到的 建议您参考HostTestAPP的例程 在Driver->UART下。没有理由使用UART就不能进入休眠

2.您是说的Stack2.0.0吗?和什么设备通讯发现复位呢?

3. 请参考TimeAPP例程

4. CC26的休眠是Power manage自己管理的,一般不需要控制就好。如果一定要操作你可以参考C:\ti\tirtos_simplelink_2_11_01_09\docs\Power_Management_CC26xx.pdf

haibin deng:

回复 Barbara Wu:

Hi WBJ

1:是的,UART的驱动是可以看到的,但是里面我是改不了的,你叫我参考HostTestAPP的例程,他里面是用NPI串口做主任务的,我在其他工程直接把那个任务添加进入是有问题的,这个我在其他的论坛也提到这个问题了,

2:我是跟苹果5S通讯的,跟安卓的手机也通讯过,都是一样的,间隔越大复位越频繁

3:这个问题我看到了,参考TimeAPP是可以的

Barbara Wu:

回复 haibin deng:

1.我是自己添加的UART口的控制,没有使用NPI层,实际上直接调用uart_read, uart_write这些函数就可以使用串口的,所以应该是可以修改的。从理论上来说 应该是只要找到了正确的UART driver文件就可以了,注意程序调用的应该是CC26XXuart这个文件。这个文件是和板子相关的,要找一下文件所在位置。

2. 我这边试一下先

haibin deng:

回复 Barbara Wu:

你好!

添加串口是可以的,我的问题是能不能完全进入睡眠,并不是说有没有串口的功能

Barbara Wu:

回复 haibin deng:

1. 请问无法进入休眠是怎么测得的?

2. 我使用如下的配置和iOS设备(iphone4s 8.1.2 lightblue )连接,没有见到您说的复位的状态。请问您的配置是什么?现象是什么?

// Minimum connection interval (units of 1.25ms, 80=100ms) if automatic// parameter update request is enabled//#define DEFAULT_DESIRED_MIN_CONN_INTERVAL 80#define DEFAULT_DESIRED_MIN_CONN_INTERVAL 1580

// Maximum connection interval (units of 1.25ms, 800=1000ms) if automatic// parameter update request is enabled//#define DEFAULT_DESIRED_MAX_CONN_INTERVAL 800#define DEFAULT_DESIRED_MAX_CONN_INTERVAL 1600

// Slave latency to use if automatic parameter update request is enabled#define DEFAULT_DESIRED_SLAVE_LATENCY 0

// Supervision timeout value (units of 10ms, 1000=10s) if automatic parameter// update request is enabled//#define DEFAULT_DESIRED_CONN_TIMEOUT 1000#define DEFAULT_DESIRED_CONN_TIMEOUT 600

haibin deng:

回复 Barbara Wu:

你好!

1:我是用示波器测的,请查看附件

2:我用你给配置试了也会啊,

haibin deng:

回复 Barbara Wu:

Hi WBJ

1:请查看我之前的附件,ble_cc26xx_2_00_00_42893和ble_cc26xx_2_00_00-41884这2个SDK都是一样的

2:我用这个ble_cc26xx_2_00_00_42893就会出现这重情况,但是ble_cc26xx_2_00_00-41884就不会啊,我不知道你用的是那个SDK测试的

Barbara Wu:

回复 haibin deng:

我使用的是ble_cc26xx_2_00_00_42893这个版本。另外量了一下:

如果只是打开UART端口,不调用UART_read等待RX的话,UART几乎不耗电。而且这时UART的TX是正常工作的。

调用UART_read开始等待RX之后,是1.83mA。UART_read读完之后,功耗恢复正常(UART几乎无功耗)。

如果再次UART_read等待时,功耗又变成1.8mA左右。

haibin deng:

回复 Barbara Wu:

你好!

你能把测试的例程发我一下,我这边测试吗?422943620@qq.com/boning.deng@linkiing.com,谢谢!

你的串口是怎么移植的?

Barbara Wu:

回复 haibin deng:

可以 需要时间整理后发送到您的邮箱

赞(0)
未经允许不得转载:TI中文支持网 » 2640加入串口后不能完全进入睡眠
分享到: 更多 (0)