Part Number:CC2530
刚发了一次,再查就没有了,貌似没发出,重发:
版本2.5.1a,配置如下:
//-DRFD_RCVC_ALWAYS_ON=TRUE
-DRFD_RCVC_ALWAYS_ON=FALSE
/* 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=440
在运行过程中,如果DRFD_RCVC_ALWAYS_ON设置为TRUE,可以收到数据,设置为FALSE时就不能收到。经监测数据,协调器有数据发出,终端也每秒发出一个data request。 按我的理解,在数据发出时,终端可能会在低功耗状态下不能立即接收,但是唤醒后能接收到才对,但现在就是触发不了 GenericApp_MessageMSGCB。这种情况会是什么原因,谢谢.
YiKai Chen:
组播也是透過廣播實現,终端平常在休眠所以會收不到组播数据,一般資料要送給终端都建議用單播
,
Jx Wang:
谢谢回复。如果是单播的话,这个延迟接收就可以吗?昨天晚上看了一下单播,我给设备自定义的ID,原来的太长我取了部分,单播的短地址好像不太好实现,我再看看单播的方式。
,
Kevin Qiu1:
广播是组播的一种特殊情况,进行组播通信时终端要接收数据必须一直处于active状态,不能休眠
,
YiKai Chen:
单播都是用短地址,短地址在终端入網的時候會透過device announce 發送上來,所以可以透過device announce 取得短地址
,
Jx Wang:
感谢各位,看来是我的理解有误,现在发送数据时,使用的单播方式,已经可以了。