This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

怎么给每个终端设置一个ID号,方便协调器识别?

我想的是程序里设置一个变量作为一个终端的ID,每次通信都附带这个ID,但是如果批量生产的话,每个Zigbee都要烧写不同的hex文件会很麻烦,请问应该怎么处理。

  • 你希望把这个ID存储在Flash吗?

    你可以使用Secondary IEEE地址,这个地址是在Flash里面的,然后你可以写进去,虽然对所有的节点的来说hex文件变成了同一个,但是也是要每个节点都写一遍的。

  • 看起来你是不想用IEEE来区分,要自己写入ID,那可以这样做:

    1、上面@VV 大神讲的,用secondary IEEE address,这种方法优点是比较简单,只要用flash programmer 就可以读写。缺点是:不能在程序运行的过程中修改。

    2、自己加入一段代码,用来接收特殊的命令[ 通过串口或者无线,如果用无线的话,为防止影响太大,最好验证 RSSI],收到命令之后把ID写入到flash某个地方。优点是可以在行程运行的过程中修改,比较灵活,缺点是比较麻烦一点。