NLME_GetExtAddr函数

本文详细解析了(void)NLME_GetExtAddr();函数的功能及使用方式,揭示了该函数如何将获取的扩展地址(IEEE地址)保存到saveExtAddr数组中,并通过调试验证了其正确性。
以前经常接触(void)NLME_GetExtAddr();这个函数,只知道它是用来获得扩展地址的,但是弄不明白为什么不设一个变量来保存获得的扩展地址呢?经过一番研究,终于弄明白了原因。

(void)NLME_GetExtAddr();在调用的时候,会将获得的扩展地址(IEEE地址)保存到saveExtAddr这个数组里,saveExtAddr是在ZDApp.h里定义的:extern uint8 saveExtAddr[];  // Loaded with value by ZDApp_Init().通过后面的注释可以知道,这个数组里的面值在ZDApp_Init()函数里设定。而在ZDApp_Init()函数里正好有(void)NLME_GetExtAddr();

验证办法:

在ZDApp_Init()函数里将代码稍做修改,如下所示:

//==================================前面代码省略============================================

  uint8 addr0 = saveExtAddr[0];
  uint8 addr1 = saveExtAddr[1];
  uint8 addr2 = saveExtAddr[2];
  uint8 addr3 = saveExtAddr[3];
  uint8 addr4 = saveExtAddr[4];
  uint8 addr5 = saveExtAddr[5];
  uint8 addr6 = saveExtAddr[6];
  uint8 addr7 = saveExtAddr[7];
 
  (void)NLME_GetExtAddr();  // Load the saveExtAddr pointer.加载saveExtAddr指针
  
  addr0 = saveExtAddr[0];
  addr1 = saveExtAddr[1];
  addr2 = saveExtAddr[2];
  addr3 = saveExtAddr[3];
  addr4 = saveExtAddr[4];
  addr5 = saveExtAddr[5];
  addr6 = saveExtAddr[6];
  addr7 = saveExtAddr[7];

//==================================后面代码省略============================================

用断点调试方法,可知在NLME_GetExtAddr();  语句执行之前,saveExtAddr里面的值都是0x00,而在执行NLME_GetExtAddr();  这一语句之后,saveExtAddr里的值分别为:c1 91 36 01 00 4b 12 00 。再通过Texas Instruments SmartRF这个软件来读扩展地址,读出来的扩展地址正好是相反的:00 12 4B 00 01 36 91 C1。一个正向保存,一个反向保存,验证完毕。


NLME(Nonlinear Mixed Effects)是一个在R语言中用于拟合复杂混合效应模型的包,它允许你在统计分析中处理随机效应和固定效应的交互。要安装并使用`nlme_3.1-166.tar.gz`这个旧版本的包,你需要通过以下步骤操作: 1. **解压文件**: 首先,将`.tar.gz`压缩包解压到你的工作目录或者其他方便查找的地方。你可以使用`untar()`函数或者直接右键解压。 ```bash untar("nlme_3.1-166.tar.gz", exdir = "your-working-directory") ``` 2. **加载库**: 进入包含`nlme`目录的路径,然后加载`nlme`包。由于这是一个旧版本,你可能需要手动指定路径,例如: ```r library(file.path("your-working-directory/nlme_3.1-166/library", "nlme")) ``` 3. **查看帮助文档**: 使用`?function_name`来查阅特定函数的帮助文档,了解如何构建模型、参数估计以及模型诊断等。 4. **创建和拟合模型**: 例如,如果你有一个数据集`mydata`,并且想建立一个线性混合模型,可以这样做: ```r fit <- lme(response ~ predictor, random = ~ (1|group), data = mydata) summary(fit) # 查看模型摘要 ``` 在这里,`response`是因变量,`predictor`是自变量,`random = ~ (1|group)`表示组间存在随机效应。 5. **结果解释**: `summary()`会提供模型的统计信息,包括固定效应系数、标准误差、t值和p值等,同时还会显示随机效应部分的信息。 注意:虽然旧版本的包可能仍然可用,但推荐使用最新的NLME版本(如`nlme_3.1-153`),因为它们通常包含了更新的功能和 bug修复。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值