home 1.2.2,关于降低功耗,有几个问题确认一下:
1.设置POWER_SAVING和RFD_RCVC_ALWAYS_ON to FALSE
2.按键轮询是不是比中断费电?
3.对下面几个参数设置有什么建议(终端需要接收数据)
-DPOLL_RATE=3000
-DQUEUED_POLL_RATE=100
-DRESPONSE_POLL_RATE=100
-DREJOIN_POLL_RATE=440
4.未用的IO如何设置为输入上拉或者输出,用哪个函数?在哪里设置?
Unused I/O pins should have a defined level and not be left floating. One way to do this is to leave the pin
unconnected and configure the pin as a general purpose I/O input with pull-up resistor. Alternatively the pin can be
configured as a general purpose I/O output
YiKai Chen:
1. 是的
2. 按键轮询是比中断费电
3. 看起來沒問題
4. 未用的IO可以透過P0INP, P1INP, P2INP設置為tristate.
Alvin Chen:
回复 YiKai Chen:
补充一下:
SDK 默认是是POLL机制,聂可以自己配置为interrupt
在TI的提供按键drivers 里面HalKeyConfig配置是否使用中断。
Viki Shi:
1&2、是的
3、可根据应用需要调整,/* The number of milliseconds to wait between data request polls to the coordinator. */
-DPOLL_RATE=1000/* This is used after receiving a data indication to poll immediately* for queued messages…in milliseconds.*/
-DQUEUED_POLL_RATE=100/* This is used after receiving a data confirmation to poll immediately* for response messages…in milliseconds*/
-DRESPONSE_POLL_RATE=100/* This is used as an alternate response poll rate only for rejoin request.* This rate is determined by the response time of the parent that the device* is trying to join.*/
-DREJOIN_POLL_RATE=4404、根据数据手册的GPIO寄存器操作
user5367314:
回复 YiKai Chen:
1.如果协调器没有给终端发指令的时候,是不是只有DPOLL一直在POLL,
而DQUEUED_POLL和DRESPONSE_POLL不POLL
2.协调器在给终端发指令的时候,DPOLL会POLL到数据,此时DQUEUED_POLL和DRESPONSE_POLL也会工作,
直到数据接收应答完毕,DQUEUED_POLL和DRESPONSE_POLL暂停工作,直到下次来新的数据再工作,
不知这样理解对不对?
3.DREJOIN_POLL_RATE在终端掉线的时候工作,这个频率如果改为1秒一次,会不会有问题?
4.假如某个终端掉线后一直无法入网(重启该终端可以理解入网),我是否可以在软件里,
设置为终端掉线一段时间后任然没有入网的话,手动去加网ZDApp_StartJoiningCycle?
这个加网函数默认是加多长时间?还是调用后就一直加?还是根据DREJOIN_BACKOFF和DREJOIN_SCAN?
YiKai Chen:
回复 user5367314:
1. 是的
2. 是的
3. 應該不會
4. 根据DREJOIN_BACKOFF和DREJOIN_SCAN
user5367314:
回复 Alvin Chen:
主要是我新增加的按键响应不了中断,例程自带的按键,改为中断可以工作,
但是我也是仿照例程的按键增加按键的,不知道原因在哪,为什么不工作
YiKai Chen:
回复 user5367314:
按鍵的問題在你另一個討論串 e2echina.ti.com/…/511710 回應了
user5367314:
回复 YiKai Chen:
有的时候把协调器重启,发现有个别终端就再也连不上了(双方都开启NV)
但是把该终端重启可以立即连上,是否可以设置为终端掉线一段时间后任然没有入网的话,手动去加网ZDApp_StartJoiningCycle
这样设置能不能解决终端掉线无法恢复连接问题?
YiKai Chen:
回复 user5367314:
根據我的經驗解決不了,建議要做SW reset
user5367314:
回复 YiKai Chen:
1.软件复位是可以解决,但是体验不好,比说灯是开着的,灯内的模块掉线了,
一直连不上,模块自动复位会导致灯灭了,另外灯都是挂的比较高,即使放按键也不好操作,
只能通过软件去复位,要是能通过软件去把2530的网络状态重置而不会改变2530的IO口电平就好了
这样即使2530掉线连不上,也能自行恢复
2.AF_DATA_CONFIRM_CMD这个是什么?发送后对方给的应答到这里?
如果应答是对方收到后通过AF_DataRequest应答的(接收方会在AF_INCOMING_MSG_CMD处理),
是不是可以屏蔽AF_DATA_CONFIRM_CMD后面的处理代码?