问题如题,
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:
可以 需要时间整理后发送到您的邮箱