Windows环境搭建

配套工具要求

  • Git工具(可选)

下载SDK代码,可以使用git软件。下载地址:https://git-scm.com/downloads

  • CMake工具

CMake工具可以动态生成Makefile文件,下载地址:https://cmake.org/

  • 交叉编译工具

交叉编译工具可以选择gcc或armcc,SDK目前支持NucleoL073RZ开发板,交叉编译基于gcc来搭建。

开发板对应的gcc下载地址:https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads 使用其他开发板,可以选择自己对应的开发板交叉编译工具。

  • Makefile执行环境

Windows下执行makefile文件可以通过下载MinGW软件。

第一步:下载SDK代码

SDK托管在github上,地址:https://github.com/h3c-iot/oasis-lorawan-demo 可以直接下载master分支代码或对应的历史发布版本,建议下载最新的master代码。

第二步:搭建编译环境

a) 下载安装CMake工具,并把CMake安装路径加入到PATH环境变量中,打开命令行执行环境,执行cmake --version查看是否生效,如下图。

图: Cmake工具检测

Cmake工具检测

b) 下载MinGW软件,安装完成后,把MinGW软件安装路径加入到PATH环境变量中,打开命令行执行环境,执行make --version查看是否生效,如下图。

图: Make工具检测

Make工具检测

c) 搭建交叉编译环境,本文用的是arm-none-eabi交叉编译工具链,安装完成后,把安装路径加入到PATH环境变量中,打开命令行执行环境,执行arm-none-eabi-gcc --version查看是否生效,如下图。

图: 交叉编译工具检测

交叉编译工具检测

第三步:CMake制作Makefile

进入SDK工程目录,进入build目录,执行cmake命令,例如下面命令。

cmake -DCMAKE_TOOLCHAIN_FILE="I:/oasis-lorawan-demo/cmake/toolchain-arm-none-eabi.cmake" -DTOOLCHAIN_PREFIX="C:/Program Files (x86)/GNU Tools ARM Embedded/8 2019-q3-update" -DCMAKE_MAKE_PROGRAM="C:/MinGW/bin/make.exe" -G "MinGW Makefiles" -DMBED_RADIO_SHIELD="SX1278ACSIPS78F" -DREGION_EU868="OFF" -DREGION_CN470="ON" -DACTIVE_REGION=" LORAMAC_REGION_CN470" ..
  • -DCMAKE_TOOLCHAIN_FILE

定义指定CMake的脚本文件,配置交叉编译工具相关参数,详细请查阅cmake/toolchain-arm-none-eabi.cmake文件

  • -DTOOLCHAIN_PREFIX

定义交叉编译工具路径,配合CMAKE_TOOLCHAIN_FILE指定的文件找到对应的交叉编译工具。

  • -DCMAKE_MAKE_PROGRAM

定义cmake执行的make工具。

  • -G "MinGW Makefiles"

指定编译生成的Makefile类型为MinGW Makefiles

  • -DMBED_RADIO_SHIELD="SX1278ACSIPS78F"

定义编译的开发板为群登的S78F模组,其他开发板参数定义参考Cmake编译参数

  • -DREGION_EU868="ON" -DREGION_CN470="OFF"

定义SDK支持的国家码,详细定义参考Cmake编译参数

  • -DACTIVE_REGION="LORAMAC_REGION_EU868"

定义当前工作激活的国家码,详细定义参考Cmake编译参数

执行后结果如下图。

图: Cmake执行结果

Cmake执行结果

注意:如果需要修改编译参数执行cmake,需要先删除build目录下的CMakeCache.txt文件后再重新执行命令。

第四步:执行Makefile

执行完cmake命令后,会在当前目录下生成cmake的相关临时文件和Makefile文件,编译执行make,最后链接生成可执行文件。

执行结果如下图

图: Make执行结果

Make执行结果

由于cmake执行未指定-DAPPLICATION="XXXXXX"进行应用的选择,所以默认编译newclassA应用案例,参考ClassA案例。最后生成的可执行文件目录为:build\example\stm32\NucleoL073\apps

第五步:烧写bin文件并测试

取最后生成的newclassA.bin文件烧写到开发板上,进行调试测试。

© H3C IoT all right reserved,powered by Gitbook更新时间: 2023-11-08 11:19:35

results matching ""

    No results matching ""