littlebot
Published on 2025-04-09 / 0 Visits
0

【源码】基于GCC和Rust的ARM Cortex M开发工具链

项目简介

本项目是一套面向ARM Cortex - M架构微控制器(如常见的STM32系列)的开源开发工具链。ARM Cortex - M系列处理器凭借低成本、低功耗特性,广泛应用于数十亿消费设备。STM32作为该架构典型微控制器集成电路,有庞大开发生态。项目涵盖编译器、SDK、编程和调试工具等,为开发者提供全面开发支持。

项目的主要特性和功能

  1. 多编译器支持:提供GCC(可从XPack和ARM获取预构建版本)和Rust编译器,满足不同开发者需求。
  2. 丰富的SDK选择:支持裸机编程、官方固件库、STM32 Cube/HAL、libopencm3、Rust stm32 - hal、Rust stm32 - rs以及nRF5 SDK等多种SDK,适应不同开发场景和编程风格。
  3. 多样化编程方式:支持UART/USB ISP、ST - Link、DAPLink、JLink等多种编程方式,开发者可灵活选择。
  4. 高效调试工具:提供OpenOCD、pyOCD和gdb等调试工具,便于代码调试和问题排查。
  5. 项目模板丰富:提供众多基于不同SDK和工具链的项目模板,助开发者快速搭建项目。

安装使用步骤

硬件准备

  1. 准备一块带有STM32 MCU的开发板,如STM32G0、F1、F4、H7等,以及GD32、CH32、AT32等兼容型号的开发板。
  2. 准备DAPLink、ST - LINK或JLink适配器用于编程和调试,推荐使用DAPLink。
  3. 准备USB2TTL UART适配器,用于不支持USB - DFU的STM32F103的ISP编程。

工具链安装

编译器安装

  1. GCC:从arm网站下载适合的预构建工具链,解压到/opt并将相应的bin目录添加到PATH环境变量。

编程和调试工具安装

  1. ISP编程工具:对于UART ISP,下载并安装stm32flash;对于USB - DFU,下载并安装dfu - util
  2. DAPLink相关工具
    • OpenOCD:由于部分芯片驱动不被上游支持,需下载并打补丁构建OpenOCD,完成后将/opt/openocd/bin添加到PATH环境变量。
    • pyOCD:使用python -m pip install pyocd安装,安装后将$HOME/.local/bin添加到PATH环境变量。

项目开发

根据所选的SDK和工具链,选择合适的项目模板作为参考,修改配置文件以适应具体的MCU型号,然后进行代码开发和编译。使用相应的编程和调试工具将编译好的代码烧录到目标设备并进行调试。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】