• ZigBee NV层使用


    原文转载于http://www.cnblogs.com/yqh2007/archive/2011/05/31/2065284.html

     

    系统NV区:
    初始化nv数据项   osal_nv_item_init()

    读取nv数据项      osal_nv_read()

    写入nv数据项      osal_nv_write()

    在使用osal_nv_read()或osal_nv_write()之前必须调用

    osal_nv_item_init()。

    函数原型:

    uint8 osal_nv_item_init( uint16 id, uint16 len, void *buf )

    --id: NV项的ID

    --len: 项的长度

    -- buf: 初始化项的数据,如果没有设置为NULL

    uint8 osal_nv_read( uint16 id, uint16 ndx, uint16 len, void *buf )

    -- id: NV项的ID

    -- ndx: 项中的索引

    -- len: 项的长度

    -- buf: 项的数据

    uint8 osal_nv_write( uint16 id, uint16 ndx, uint16 len, void *buf )

    -- id: NV项的ID

    -- ndx: 项中的索引

    -- len: 项的长度

    -- buf: 项的数据

    0x0000                        保留

    0x0001-0x0020           OSAL

    0x0021-0x0040           NWK

    0x0041-0x0060           APS

    0x0061-0x0080           Sec

    0x0081-0x00A0           ZDO

    0x00A1-0x0200           保留

    0x0201-0x0FFF            APP

    0x1000-0xFFFF            保留

    系统已定义NV的项:
    // osal 的项

    ZCD_NV_EXTADDR                   0x0001           64位扩展地址

    ZCD_NV_BOOTCOUNTER          0x0002          boot计数器

    ZCD_NV_STARTUP_OPTION      0x0003          开始的控制选项

    (ZCD_STARTOPT_DEFAULT_CONFIG_STATE)

    (ZCD_STARTOPT_DEFAULT_NETWORK_STATE)

    ZCD_NV_START_DELAY             0x0004           开始延迟时间

    // NWK层的项

    ZCD_NV_NIB                            0x0021

    ZCD_NV_DEVICE_LIST              0x0022

    ZCD_NV_ADDRMGR                  0x0023

    ZCD_NV_POLL_RATE                 0x0024            轮询率

    ZCD_NV_QUEUED_POLL_RATE        0x0025      队列轮询率

    ZCD_NV_RESPONSE_POLL_RATE    0x0026       响应轮询率

    ZCD_NV_REJOIN_POLL_RATE          0x0027      重新连接轮询率

    ZCD_NV_DATA_RETRIES                 0x0028       传输数据重试次数

    ZCD_NV_POLL_FAILURE_RETRIES   0x0029       轮询失败重试次数

    ZCD_NV_STACK_PROFILE               0x002A       使用的profile ID

    ZCD_NV_INDIRECT_MSG_TIMEOUT   0x002B     默认间接消息举手超时

    ZCD_NV_ROUTE_EXPIRY_TIME     0x002C          路由的有效期

    ZCD_NV_EXTENDED_PAN_ID        0x002D          扩展PAN ID

    ZCD_NV_BCAST_RETRIES             0x002E           广播参数

    ZCD_NV_PASSIVE_ACK_TIMEOUT   0x002F         广播参数

    ZCD_NV_BCAST_DELIVERY_TIME    0x0030         广播参数

    ZCD_NV_NWK_MODE                    0x0031           网络模式

    ZCD_NV_CONCENTRATOR_ENABLE      0x0032         多对一的value

    ZCD_NV_CONCENTRATOR_DISCOVERY   0x0033      多对一的value

    ZCD_NV_CONCENTRATOR_RADIUS       0x0034        多对一的value

    ZCD_NV_MAX_SOURCE_ROUTE          0x0035           多对一的value

    // APS层的项

    ZCD_NV_BINDING_TABLE              0x0041              绑定表

    ZCD_NV_GROUP_TABLE                0x0042              组表

    ZCD_NV_APS_FRAME_RETRIES          0x0043         传输失败允许传输的最大次数

    ZCD_NV_APS_ACK_WAIT_DURATION      0x0044    这个数被用做轮询设备

    ZCD_NV_APS_ACK_WAIT_MULTIPLIER    0x0045    这个数被用做非轮询设备

    ZCD_NV_BINDING_TIME               0x0046              终端设备绑定时间数

    // 安全层的项

    ZCD_NV_SECURITY_LEVEL          0x0061           安全等级

    ZCD_NV_PRECFGKEY                  0x0062           预先配置的安全密钥

    ZCD_NV_PRECFGKEYS_ENABLE   0x0063          密钥配置为整个网络还是协调器

    //ZDO层的项

    ZCD_NV_USERDESC                0x0081

    ZCD_NV_NWKKEY                   0x0082       网络密钥

    ZCD_NV_PANID                       0x0083       PAN ID

    ZCD_NV_CHANLIST                 0x0084       默认的信道列表

    ZCD_NV_LEAVE_CTRL              0x0085       控制等级

    ZCD_NV_SCAN_DURATION       0x0086      默认开始扫描的期限

    ZCD_NV_LOGICAL_TYPE           0x0087      逻辑设备类型

    // ZCL 层的项

    ZCD_NV_SCENE_TABLE             0x0091

    // Non-standard NV item IDs

    ZCD_NV_SAPI_ENDPOINT          0x00A1

    用户自定义NV项:
    为用户保留的NV项目号从               0x0201 --- 0x0FFF

    原语操作NV:
    1、  初始化                                        byte NLME_InitNV( void )

    2、  设置默认的NIB,设备表,绑定表      void NLME_SetDefaultNV( void )

    3、  从NV中恢复网络存储器项               byte NLME_RestoreFromNV( void )

    4、  把NIB写入到NV中                         void NLME_UpdateNV(

    byte enables )

    --NWK_NV_NIB_ENABLE                   0x01       保存网络NIB

    --NWK_NV_DEVICELIST_ENABLE      0x02       保存设备列表

    --NWK_NV_BINDING_ENABLE           0x04       保存绑定表

    --NWK_NV_ADDRMGR_ENABLE         0x08       保存管理表地址

  • 相关阅读:
    案例分析:从一则笑话分析需求的陷阱
    2019寒假培训第二天
    2019寒假培训第一天
    牛客网国庆集训派对Day6 题目 2018年
    unique STL讲解和模板
    SPFA 模板
    ACM Shenyang Onsite 2016 题目
    牛客网国庆集训派对Day5 题目 2018年
    The North American Invitational Programming Contest 2017 题目
    牛客网国庆集训派对Day4题目 2018年
  • 原文地址:https://www.cnblogs.com/cherishui/p/3770927.html
Copyright © 2020-2023  润新知