一、创建
启动运行 Simplicity Studio 之后,在软件界面最上面的菜单栏中依次找到并点击 File -> New -> Silion Labs Project Wizard,在弹窗中清除掉原本所有默认的选项,然后从上到下依次配置好如下三项即可:
- Target Device
- SDK
- IDE / Toolchain
这里以 EFR32MG21A020F768 为例,如下图所示:
(注:Target Device 的位置,应该按自己实际所用芯片进行搜索选择。)
点击上图中的 NEXT,进入下图所示界面:
在上图中的筛选框内输入 minimal 并回车,最终筛选搜索结果如下图所示:
选中搜索结果中的 ZigbeeMinimal 并点击 NEXT,进入下图所示界面:
这里大家可以根据自己的需求进行适当修改,也可以全部保持默认。最后点击 FINISH,即完成了工程的创建,如下图所示:
二、编译
首先选中界面左上角 Project Explorer 中的工程名,然后点击右上角圈出的 小锤子 的图标,即可开始编译。编译结果如下图所示:
从上图中可以看出,新建的 Application 的工程,如果不经任何改动的话,是编译不过的,会报很多的 error 和 warning。
三、修改工程
其实需要修改的地方不多,主要就 2 处就可以了。接下来打开工程里面的 slcp 文件,界面如下图所示:
从上图可以看出,新版 SDK 的开发跟以前相比有了很大的变化。感兴趣的可以自行进行新老版本的对比,这里就不再赘述。
3.1 配置 vcom
选中 SOFTWARE COMPONENTS 之后,在右上角的搜索框内搜索 vcom,搜索结果如下图所示:
点击上图中的 Configure 对 vcom 进行配置,进入下图所示界面:
从上图可以看出,这里本质上主要就是对于 串口 的配置,我们的开发板上用于 调试使用 的串口引脚就是 PD0 和 PD1,如下图所示:
那么我们按下图进行配置即可:
如果使用的是其他硬件,需要根据实际情况进行调整。
3.2 删除led0
同样的方式,我们搜索 led,可以找到 led0。
这里简单起见,我们按上图的提示直接 Uninstall 即可。
四、再编译
再次编译,编译结果如下图所示:
从上图中可以看出,工程成功编译通过了。编译生成的固件在该工程的 GNU ARM v10.2.1 - Default 目录下,如下图所示:
从上图中可以看出,编译同时生成了 bin、hex、s37 等多种格式的固件。一般来说,我们会选择使用 s37 格式的固件。
五、下载
(注:在下载 Application 固件之前,请确保已经先下载过 BootLoader 固件。)
关于如何下载 Application 固件,参阅下面两篇文章中的任意一篇即可:
- ZigBee 3.0实战教程-Silicon Labs EFR32+EmberZnet-3-08:烧录固件之J-Link+Simplicity Commander
- ZigBee 3.0实战教程-Silicon Labs EFR32+EmberZnet-3-09:烧录固件之J-Link+J-Flash Lite
本文创建的最简单的 Application 工程的固件下载完成后,使系统复位一下,可以看到串口调试助手中有收到 EFR32 芯片的启动信息,如下图所示:
(注:如果还有遇到问题,建议在文初或文末提及的技术交流QQ群中提问交流。)