Siliconlabs EFR32MG系列ZIGBEE终端休眠设备开发——知识点杂记

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


一、插件中CLS的属性选项的E,F,S,B 分别是什么?

  • E(External Attributes):

    您可能希望将某些属性的值存储在Zigbee应用程序框架外部的位置。
    这种类型的存储对于每次请求时必须从硬件读取的属性来说是最有意义的。
    在这种情况下,数据不应该存储在RAM中,浪费RAM的存储空间。
    
    当需要读/写数据的时候,可以通过调用
    emberAfExternalAttributeReadCallback()/
    emberAfExternalAttributeWriteCallback()
    
    上面的两个函数在你勾选了E这个选项后会自动生成。
    任何不能及时返回或更新的属性目前都不是外部化的候选属性。
    
  • F(Persistent Memory Storage)

      就是数据是否需要保存到EEPROM中,EFR32MG21上面并没有
      eeprom,使用的是Flash代替的EEPROM,经过一些对保存在
      flash中时的优化,形成了现在的使用NVM3的方式将数据保存到
      flash中,关于NVM3的使用后面我再说
    
  • S(Singleton)

      当一个设备中的多个endpoint下包含相关的CLS下的相同属性时,
      我们希望这几个enpoint下的该属性指向同一位置,例如OTA的版本号。
      当勾选了S,那么不同endpoint下的属性的读和写,都指向同一位置。
    
  • B(Attribute Bounding )

    属性值的边界,就是说可以通过给该属性设置(min,max),当client试图写入该属性的时候,写入值需要在在大于min,小于max。
    

猜你喜欢

转载自blog.csdn.net/Dr_chaser/article/details/111469570