打印
[Atmel]

每天跟我读点资料:轻型网络开发指南(23)

[复制链接]
603|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ddllxxrr|  楼主 | 2015-12-10 19:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 ddllxxrr 于 2015-12-16 13:26 编辑

5.10 高级收发功能
5.10.1 隨机数发生器
隨机数发生器能通过在配置文件中定义PHY_ENABLE_RANDOM_NUMBER_GENERATOR.这个设置只在无线传输支持这项功能情况下有影响。
一个隨机数可以被PHY_RandomReq()功能请求。一个有效16比特隨机值立刻从该函数返回。
用隨机数生产例子:

void randomize(void)
{
srand(PHY_RandomReq());
}

5.10.2 能量检测
能量检测可以通过在配置文件中定义PHY_ENABLE_ENERGY_DETECTION来实现。这个功能可用在所有无线传输。
一个通道的能量测量可以使用PHY_EdReq()函数来请求。测量的通道能量值(dB)可立刻从函数中返回。
使用能量检测:
void scanChannelEnergy(void)
{
int8_t ed;
PHY_SetChannel(0x0d);
ed = PHY_EdReq();
if (ed < -50)
// stay on this channel
else
// scan another channel
}

5.11 配置参数
每一个应用应提供一个config.h为命字的文件。这个文件应当含有任何重写默认参数,并且可以为空。也推荐应用参数存在有APP_前缀的文件中。一个完全列出轻型网络栈的配置参数和描述如下所示:

NWK_BUFFERS_AMOUNT-为堆栈操作保留的缓冲数。这个缓冲用来发送,接收,和路由帧。最小的使用值为1;可以允许堆栈发送和接收帧。然而,发送一个帧的确认请求需要2个缓冲区,一个发送一个帧和另一个接受确认。最小推荐值为3

NWK_DUPLICATE_REJECTION_TABLE_SIZE-进入重复拒绝表的数目。这个表用来检测和拒绝已经被堆栈接收的处理的帧。这个表用来解决:
。网络拓扑的循环,一个路由算法可以建立一个形势,一个帧在一些节点之间循环路由。
。已经处理从邻居节点传来的广播帧
表中的输入项仍然活动NWK_DUPLICATE_REJECTION_TTL定义的毫秒并且在时间溢出时将不被取代,所以当一个帧收到并且在重复拒绝表中没有空间,这个帧不被处理。





相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:http://shop34182318.taobao.com/ http://shop562064536.taobao.com

2398

主题

6945

帖子

66

粉丝