天诚ZigBee开发套件配套的例程的使用方法如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网

把“\示例及例程\ZigBee3.0V1.00”内的Z3.0实验1.zip解压出来,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_02

把(\SiliconLabs\SimplicityStudio\v4\developer\sdks\gecko_sdk_suite \v2.4\app\builder)文件夹下与Coord和Router同名的文件夹备份后删除

把Z3.0实验1.zip解压出来Coord和Router文件夹复制到(\SiliconLabs\ SimplicityStudio\v4\developer\sdks\gecko_sdk_suite \v2.4\app\builder)文件夹。

1Simplicity Studio导入例程

打开Simplicity Studio,在“File”菜单内选择“Import”。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_03

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_04

点击“More Import Options…”,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_05

在“General”内选择“Existing Projects into Workspace”,点击“Next”,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_06

点击“Browse”选择工程文件,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_07

找到Coord工程的路径:“\SiliconLabs\SimplicityStudio\v4\developer \sdks\gecko_sdk_suite\v2.4\app\builder”,点击“确定”,如下图所示。

点击“Finish”完成例程导入。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_08

2检查Simplicity Studio配置
点击“Finish”完成加载,点击 上的“Simplicity IDE”,切换到Simplicity IDE界面,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_09

在左侧展开文件列表,找到“Coord.isc”文件,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_10

点击“ 芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_11”,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_12

点击“OK”,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_13

检查液晶驱动文件是否已经引用,事件是否已对添加,如上图所示。

3Simplicity Studio生成IAR工程

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_14

点击 芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_15完成工程的导入,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_16

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_17

注:出现如上图所示的提示框,不要勾选覆盖Coord_callbacks.c文件。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_18

点击“OK”完成。

4使用IAR编译工程
打开工程所在路径,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_19

分别把Coord-postbuild.bat和Coord-prebuild.bat等2个文件复制到“Coord”文件夹内。

注:复制文件前必须先完成3节介绍的操作。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_20

在Coord文件夹内,找到“Coord.eww”文件,使用IAR打开,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_21

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_22

点击“芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_23 ”(或Project菜单下的Rebuild All)重新编译工程,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_24

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_25

至此完成Coord工程在IAR的编译。下一步就是下载工程至开发套件内。

5使用SimplicityCommander下载例程

检查硬件连接

把JLink仿真器20P数据线正确安插在ZigBee开发套件的液晶底板上,ZigBee模块及任意一块传感器模块正确安插在液晶底板上(1个ZigBee+1个液晶底板+任一传感器模块总称为1个ZigBee节点)。通过USB线把仿真器与计算机连接起来。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_26

在Simplicity Studio的主界面上,点击“ 芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_27”,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_28

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_29

选择“Simplicity commander”,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_30

选择需要连接的硬件,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_31

点击“ 芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_32”来检查仿真器硬件的连接,如果没有反应,返回Simplicity Studio主界面检查仿真器连接的配置,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_33

成功连接后,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_34

点击下图的“ 芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_35”来检查ZigBee模块,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_36

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_37

左侧选择“FLASH”,右侧点击“Erase chip”来擦除芯片,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_38

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_39

点击“ 芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_40”,打开Coord工程需要烧写的文件Coord.s37(文件路径:\SiliconLabs\SimplicityStudio\v4\developer\sdks\gecko_sdk_suite\v2.4\app\builder\Coord\build\exe),如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_41

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_42

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_43

点击“ 芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_44”开始烧写,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_45

点击“芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_46 ”,打开Coord工程需要烧写的bootloader文件serial-uart-bootloader_Efr32mg1b132f256gm48.s37(文件路径:\ SiliconLabs\SimplicityStudio\v4\developer\sdks\gecko_sdk_suite\v2.4\app\builder\),如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_47

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_48

点击“ 芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_49”开始烧写,如下图所示。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_50

至此,完成Coord工程的烧写。

在下载另一个节点程序前,需要了解一下下载的2个文件。

serial-uart-bootloader_Efr32mg1b132f256gm48.s37

工程名.s37

serial-uart-bootloader_Efr32mg1b132f256gm48.s37是引导加载程序(也叫引导程序),主要作用是初始化设备,更新固件,并会执行一些完整性检查。跟电脑的主板程序差不多功能。每个节点烧写一次即可以。

工程名.s37是应用程序,主要是实现节点的功能,如协议栈、应用等都会在这上面运行。相当于电脑的操作系统和应用程序。工程的每次更新都需要重新烧写。

使用另一个节点按1-5节的介绍,完成Router工程的烧写。

Router工程内点击芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_嵌入式_51 生成IAR工程之前(3节操作),必须检查Simplicity Studio如下的配置是否正确。

芯科EmberZNet_ZigBee3.0开发日记六:ZigBee3.0网络创建与加入_物联网_52