在collector启动网络过程中本人有一下几点疑惑。
1:collector有种选择信道方式,第一自己应用层修改指定信道,或者通过能量检测扫描最低能量或最小干扰的信道来检查具有最低RF能量的信道?
2:选择信道后,不同网络中的panid和短地址,必须唯一,才可以区分吗?但是在通讯中panid才是设备判断的条件,短地址并无判断。可是在抓包工具中,二个collector,所有的发送地址都是AABB。
Alvin Chen:
AABB是你自己写的,panid是唯一是一个网络的id。*!Coordinator Short Address When Operating with FH Enabled.*/
#define FH_COORD_SHORT_ADDR 0xAABB/*!你可以在下面做文章:
static void sendScanReq(ApiMac_scantype_t type)
{ApiMac_mlmeScanReq_t scanReq;/* set common parameters for all scans */memset(&scanReq, 0, sizeof(ApiMac_mlmeScanReq_t));/* set scan channels from channel mask*/memcpy(scanReq.scanChannels, defaultChannelMask,APIMAC_154G_CHANNEL_BITMAP_SIZ);scanReq.scanType = type;if(CONFIG_BEACON_ORDER == JDLLC_BEACON_ORDER_NON_BEACON){scanReq.scanDuration = CONFIG_SCAN_DURATION;}else{scanReq.scanDuration = CONFIG_BEACON_ORDER;}scanReq.maxResults = 0;/* Expecting beacon notifications */scanReq.permitJoining = false;scanReq.linkQuality = CONFIG_LINKQUALITY;scanReq.percentFilter = CONFIG_PERCENTFILTER;scanReq.channelPage = CONFIG_CHANNEL_PAGE;scanReq.phyID = CONFIG_PHY_ID;/* using no security for scan request command */memset(&scanReq.sec, 0, sizeof(ApiMac_sec_t));/* send scan Req */ApiMac_mlmeScanReq(&scanReq);
}
YiKai Chen:
1. 你可以在应用层修改指定信道,或者也可以通过能量检测扫描最低能量或最小干扰的信道来检查具有最低RF能量的信道
2. 先以PANID相同才能通信、同一PaNID內的短地址必須要不同
user5322468:
回复 YiKai Chen:
你的意思是指非信标模式中
相同panid网络必须要短地址不同区分才可以通讯,不同panid网络直接通讯?(不区分信道?)
YiKai Chen:
回复 user5322468:
相同panid网络每個設備短地址都不同、都可以跟collector通讯,不同panid网络設備沒有辨法通讯