搭建 EFR32 环境

更新时间:2022-11-24 09:20:21下载pdf

涂鸦 Zigbee EFR32 涂鸦 Zigbee SDK 应用工程编译依赖于 Python 脚本。如果使用 Linux 或者 Windows 开发调试,需要在对应的环境下安装 Python2.7.X 解释器。为了便于开发,建议在 Windows 上使用 IAR 进行开发。

本文的编译说明基于 silicon_labs_zigbee\app\switch\project\sample_switch1\EFR32MG13P732F512 下的应用环境。

获取 IAR 并安装

  1. 前往 IAR 官网 下载 IAR Embedded Workbench IDE(IAR for Arm)。

    必须使用 ARM 8.40.1 或更高版本正版 IAR,强烈建议使用 8.40.1 版本。

  2. 下载并安装 Python2.7.X 解释器,并配置 Python 环境变量,安装配置完,建议重启电脑。重启后,可以 WIN+R 打开电脑的运行窗口,输入CMD指令,然后命令行输入 Python ,如果显示的是 Python 2.7 证明环境变量配置成功。
    搭建 EFR32 环境

    不要以Python高版本替代,否则编译过后无法生成生产文件,或编译报错。

  3. 以 sample_switch1 为例进行 IAR 编译:

    1. 进入目录silicon_labs_zigbee\app\switch\project\sample_switch1\EFR32MG13P732F512

    2. 双击 tuya_sdk.eww 即可打开工程。

    3. 打开工程后,进行开发编译。

      不要通过先打开 IAR 后,然后 Open workspace 方式来打开工程,用这种方式编译可能出错。Rebuild All之前建议Clean一下

      搭建 EFR32 环境

在 Linux 中用 GCC 编译

由于 SDK 自带 GCC 编译器,无需再安装编译器。假定您已经进入工程 sample_switch1\EFR32MG13P732F512 下,具体命令行如下:

#./run.sh clean       //清除编译输出的问题
#./run.sh build 0    //编译 release 版本
#./run.sh build 1    //编译 debug 版本(带串口打印信息)
  • 如果第一次编译报错的话需要注意下文件权限的配置,具体修改方法如下:
    1. 进入 silicon_lib_zigbee 主目录。
    2. 运行 chmod –R 777 *
  • 如果编译报动态库相关的错误(.So),需要在 silicon_labs_zigbee/tools 下,删除 gcc-arm-none-eabi-9-2019-q4-major 编译工具文件夹,重新解压编译工具链文件:
    tar -xvf gcc-arm-none-eabi-9-2019-q4-major.tar.bz2
    
  • 不要再 Windows 系统中面用任何软件打开工程,会导致编码错误导致在 Linux 下编译错误。一定要在 Linux 系统中使用 git 命令克隆代码并编译。