#author("2022-11-17T13:24:23+08:00","default:Admin","Admin") #author("2022-11-21T11:20:30+08:00","default:Admin","Admin") [[+Zigbee30+EmberZnet]] &color(red){※This article is based on EmberZnet SDK 6.7.5.0 and EFR32MG Series}; #contents * 概要 [#s1483e6a] 在 Zigbee 网络中,可以使用 Zigbee MAC 地址(长地址)来区分不同的设备,这个地址是全球唯一有的 ( manufacture token ),通常由芯片供应商提供,固化在 eeprom 中;Silicon Labs 提供的 Zigbee 芯片在出厂时已经预烧录了 IEEE EUI64 地址,放在芯片的 flash 中,不可修改和擦除。 用户可以直接在产品中使用这个 EUI64 地址,除此之外,用户也可以选择使用自己的 IEEE 地址,这需要用户在产品制造时烧录自己的 EUI64,这个操作不会覆盖 Ember EUI64,但是会配置让芯片使用这个新的 EUI64 地址。 [[地址修改方法参考>++EmberZnet++开发环境#b8d440dc]] * API [#oe052931] ** 源码解析 [#y9812a99] \zigbee_applications\zigbee_optimize_bootup_rejoin\src\af-main-common.c #codeprettify{{ // We declare this variable 'const' but NOT const. Those functions that we may use // this variable would also have to declare it const in order to function // correctly, which is not the case (e.g. emberFindKeyTableEntry()). const EmberEUI64 emberAfNullEui64 = { 0, 0, 0, 0, 0, 0, 0, 0 }; }} ** emberAfGetEui64 [#ie5fa7e6] 获取当前的 MAC 地址 #codeprettify{{ EmberEUI64 eui64; emberAfGetEui64(eui64); }} &ref(ZigBee.png); #hr(); Comment: #comment_kcaptcha