littlebot
Published on 2025-04-08 / 1 Visits
0

【源码】基于C语言的BSE飞行软件模板项目

项目简介

这是一个用于BSE飞行软件项目的模板项目,专为Atmel SAMD21J18A处理器上由Atmel START生成的ASF4项目而构建。该项目使用C语言编写,为飞行软件的开发提供基础框架,可在此基础上添加所需的组件和库。

项目的主要特性和功能

  1. 提供标准化的模板结构,便于快速搭建BSE飞行软件开发环境。
  2. 可通过make命令编译代码,生成的二进制文件存于build/目录。
  3. 支持使用openocdgdb将代码上传到微控制器并进行运行和调试。
  4. 提供在Windows、Mac OSX、Linux等不同操作系统上安装工具链的详细步骤。
  5. 可按特定流程更改Atmel Start ASF库的配置、芯片配置或引脚布局等。

安装使用步骤

前提条件

假设用户已经下载了本项目的源码文件。

安装工具链

Windows

  1. 在WSL中:
    • 管理员权限运行PowerShell,输入wsl --install安装WSL。
    • 将项目复制到WSL文件系统。
    • 编辑openocd.cfg文件,顶部添加bindto 0.0.0.0
    • 运行hostname并记录输出。
    • 编辑Makefile文件,将所有"localhost"替换为"hostname.local"(hostname为hostname输出)。
    • 运行sudo apt install gcc-arm-none-eabi gdb-multiarch make build-essential -y安装必要包。
    • 运行sudo ln -s /usr/bin/gdb-multiarch /usr/bin/arm-none-eabi-gdb
  2. 在Windows中:创建防火墙规则,允许WSL与openocd通信。

Mac OSX

  1. Apple Silicon Mac先遵循ARM Mac说明。
  2. 安装homebrew。
  3. 运行brew install openocd安装openocd。
  4. 安装ARM开发工具: brew tap PX4/homebrew-px4 brew update brew search px4 brew install gcc-arm-none-eabi-80 若最后一步失败且提示安装命令行工具,使用xcode-select --install安装。

ARM (M1) Mac

  1. ~/.zshrc文件末尾添加: alias arm="env /usr/bin/arch -arm64 /bin/zsh --login" alias intel="env /usr/bin/arch -x86_64 /bin/zsh --login"
  2. 运行source ~/.zshrc
  3. 运行intel切换到Intel终端,验证arch输出为i386
  4. 在Intel终端安装brew。
  5. 完成Mac OSX其余安装步骤。

Linux (Ubuntu)

  1. 此处安装适用于Linux的"Arm GNU Toolchain for 32-bit Devices",并将bin文件夹添加到系统路径。
  2. 运行sudo apt install openocd安装openocd,并按步骤添加udev规则。

Linux (其他发行版)

  1. 安装Arm GNU Toolchain。
  2. 安装openocd,若包管理器中没有,参考此处说明,并将bin文件夹添加到系统路径。
  3. 可能需添加udev规则。

代码编译与上传

  1. 确保工具链已安装。
  2. 运行make编译代码,二进制文件存于build/目录。
  3. 确保已连接开发板或调试器。
  4. 在项目目录下启动openocd
  5. 新终端中,在项目目录下运行make connect
  6. (gdb)提示符下运行load,上传二进制文件到微控制器。
  7. 运行monitor reset halt重置微控制器并开始调试。
  8. 输入c运行程序。

使用Visual Studio Code调试(未测试)

  1. 确保已使用make编译代码。
  2. 确保已连接开发板或调试器。
  3. 在VSCode的“运行和调试”菜单中,选择“Debug (OpenOCD)”配置,点击绿色箭头开始调试。
  4. 等待调试器启动,点击播放按钮运行程序。

更改ASF库配置

  1. 访问start.atmel.com
  2. 点击“Load project from file”,上传./asf-samd21/atmel_start_config.atstart
  3. 根据需要添加软件组件、配置引脚复用、封装或时钟。
  4. 点击“Export project”,选择“Makefile (standalone)”并下载压缩包。
  5. 将下载文件扩展名从.atzip改为.zip并解压。
  6. 删除解压目录中的main.c文件。
  7. 删除./asf-samd21/目录下所有内容,将解压目录中所有文件复制到该目录。
  8. 根据./Makefile说明修改ATMEL_SRC_DIRSATMEL_INCLUDE_DIRS,可能需根据Atmel Start对./asf-samd21/gcc/Makefile的更改进一步修改./Makefile

下载地址

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