ZigBee学习(3)————NV操作函数

目录

NV就是Non Volatile的缩写,即非易失性存储器,即使系统断电后,存储在该存储器的数据也不会丢失。在ZigBee协议栈中,NV存储器主要用于保存网络的配置参数(如网路地址),因为掉电后该参数不丢失。


在协议栈中使用的NV操作函数只有如下三个:

1)

 

2)

 

3)

 

uint8 value_read;
uint8 value=0x08;
osal_nv_item_init(TEST_NV,1,BULL);
osal_nv_write(TEST_NV,0,1,&value);
osal_nv_read(TEST_NV,0,1,&value_read);

 

static void rxCB(uint8 port,uint8 event)   
{
    uint8 value_read;
    uint8 value=18;
    uint8 uartbuf[2];
    uint8 cmd[6];
    HalUARTRead(0,cmd,6);
    if(osal_memcmp(cmd,"nvread",6))
    {
        osal_nv_item_init(TEST_NV,1,NULL);
        osal_nv_write(TEST_NV,0,1,&value);
        osal_nv_read(TEST_NV,0,1,&value_read);
        uartbuf[0]=value_read / 10 + '0';
        uartbuf[1]=value_read % 10 + '0'; 
        HalUARTWrite(0,uartbuf,2);
    }
}

定义一个变量用于存储从NV存储器读取的数据,写入NV条目的数据;定义缓冲区和命令缓冲区,分别用于存放读取的数据和用于存取从串口读取到的命令;从串口读取命令后存放在cmd数组中;使用osal_memcmp()函数判断命令是否为“nvread”。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值