0755-23080616

基于LR1120与腾讯云物联网平台实现地理定位(二):开发环境与源代码设置

2025-09-17 11:25

分享到:

对于许多习惯于集成开发环境(IDE)的嵌入式工程师而言,搭建一个基于命令行的交叉编译环境可能是一个挑战。本章节将提供详尽的指导,确保在Windows操作系统上顺利构建出编译Semtech官方示例代码所需的环境。

 

工具链与构建环境安装

本项目的编译工作需要在类Linux环境下完成,因此,在Windows系统上,推荐使用Cygwin来模拟这一环境。

  • GNU Arm Embedded Toolchain:这是编译ARM Cortex-M内核微控制器代码所必需的交叉编译器、汇编器和链接器套件。请从ARM官方网站下载并安装。安装完成后,务必将其bin目录(例如C:\Program Files (x86)\GNU Arm Embedded Toolchain\10 2020-q4-major\bin)添加到系统的PATH环境变量中,以便在任何命令行窗口中都能调用arm-none-eabi-gcc等工具。

 

  • Cygwin for Windows:
    • 背景:Cygwin是一个在Windows上提供类UNIX环境的开源项目。Semtech的示例代码使用
      Makefile进行构建管理,这在类UNIX环境中是标准做法。Cygwin使得我们可以在Windows上直接使用make等命令来编译项目。
    • 安装步骤:
      1. 访问Cygwin官方网站(https://cygwin.com/install.html),下载setup-x86_64.exe安装程序。
      2. 运行安装程序,选择“从Internet安装”。
      3. 选择一个合适的根目录(例如C:\cygwin64)和本地软件包目录(用于存放下载的安装文件)。
      4. 选择网络连接方式(通常为“Direct Connection”)。
      5. 选择一个下载镜像站点。
      6. 关键步骤:选择软件包。在软件包选择界面,这是最容易出错的环节。为了成功编译项目,必须确保安装了以下关键软件包。在搜索框中分别搜索并选择它们:
        • make: 在“Devel”分类下,找到make包,点击其状态从“Skip”切换为要安装的版本号。这是构建项目的核心工具 。
        • git: 在“Devel”分类下,找到git包并选择安装。用于从GitHub克隆源代码仓库。
        • unzip: 在“Archive”分类下,选择unzip,某些脚本可能会用到。
      7. 点击“下一步”,安装程序会自动处理依赖关系并开始下载和安装所选软件包。这个过程可能需要一些时间 6
    • 环境验证:安装完成后,从开始菜单或桌面快捷方式启动“Cygwin64 Terminal”。在打开的终端窗口中,输入以下命令进行验证:
      Bash
      make --version
      git --version
      arm-none-eabi-gcc --version

      如果三个命令都能正确显示版本信息,则说明开发环境已成功搭建。Cygwin终端中的路径与Windows路径有所不同,例如Windows的D:\盘在Cygwin中对应/cygdrive/d/。

 

获取必要的代码仓库

开发环境就绪后,下一步是获取Semtech提供的官方源代码。在Cygwin终端中,使用git clone命令下载两个至关重要的仓库。

  • Lora-net/SWTL001: 这是用于更新LR11xx系列芯片内部固件的参考工具。LR1120芯片内部运行着一个独立的固件,主控MCU通过特定API与其交互。更新此固件是确保其与上层应用协议栈兼容的关键一步。
    Bash
    git clonehttps://github.com/Lora-net/SWTL001.git

 

  • Lora-net/SWL2001: 这是LoRa Basics™ Modem(LBM)协议栈的官方实现。它是一个功能完备的LoRaWAN协议栈,并包含了我们所需要的地理定位示例应用程序。
    Bash
    git clonehttps://github.com/Lora-net/SWL2001.git

 

下载完成后,您的工作目录下将出现SWTL001和SWL2001两个文件夹,包含了后续所有开发工作所需的文件。

 

基于LR1120与腾讯云物联网平台实现地理定位系列

基于LR1120与腾讯云物联网平台实现地理定位(一):系统架构与硬件准备

基于LR1120与腾讯云物联网平台实现地理定位(二):开发环境与源代码设置

基于LR1120与腾讯云物联网平台实现地理定位(三):终端节点固件与应用程序部署

基于LR1120与腾讯云物联网平台实现地理定位(四):腾讯云物联网平台配置

基于LR1120与腾讯云物联网平台实现地理定位(五):端到端数据验证与应用