微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > CC2530 多对1 (有人能指点一下吗?)

CC2530 多对1 (有人能指点一下吗?)

时间:10-02 整理:3721RD 点击:

各位好 我想要实现多对1的程式

我有看过1对多程式 发射端能使用: basicRfSendPacket(RECEIVE_ADDR, pTxData, APP_PAYLOAD_LENGTH)

的RECEIVE_ADDR 可以决定哪一个接收端

但如果是多对1 要如何写,因为在1对1裡 接收端的程式好像没有basicRfReceivePacket(Send_ADDR, pTxData, APP_PAYLOAD_LENGTH)

类似的程式码,而是直接 basicRfReceiveOn(); 来接收pRxData[ ]裡的数据

这样数据会有冲突,无法準确接收我要的对应值

所以不知该如何下手,不知有人能为我解惑吗??

谢谢!

没人能指点指点吗? 

每个节点都有一个地址,多个节点向同一个地址发数据就可以了

这我是了解,

我有测过: A传给C, B也传给C, C接在电脑上看数据

最后发现几乎都是A的值,而且A到C的距离 还比 B到C的距离还长

所以现在我卡在这边

zigbee协议中采用的是冲突检测机制,节点只有在检测到信道空闲的时候才可以发送数据。

您是具体怎么测试的呢?是A和B同时发送数据?

我烧侦测光亮度(0~100%) 在A、B 上,

A总延迟为311ms 后发送,B为411ms 后发送,

我A、B 电源都啟动,接收端C 只接收A 数值,

若把A 电源关闭,就能收到B数值,

A到C 距离 比 B到C 距离 长约5公分 。

看2位的解说看来,好像无法在接收端设计:先接收指定(A) send ADDR,再接收另一个(B) send ADDR

发送数据的间隔多少,把时间拉长就可以

我估计是C的串口部分的问题,基于basicRF这个程序,我十几个从节点以2S的周期向主节点发送数据,丢包率都很低。

先谢谢各位的指教

我 以解决问题了

看来时间间隔要够大才不会有掉包的现象

我原本是希望在一秒内接收到所有装置感测资讯

但看来可能要扩大秒数范围了

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

网站地图

Top