【灵动Mini-F5265-OB】vscode+gcc工程创建、下载、调试

article/2025/6/7 13:11:44

【前言】
【灵动Mini-F5265-OB】在官方的例程中提供了mdk、IAR的开发环境,使用起来非常方便。有位大佬也提供了一个gcc的示例,但是我使用vscode的keil插件进行工程创建,但是提示pack是对不上的。所以我决定重新创建我的vscode来创建开发环境。
【工程创建】
首先创建文件夹gcc_template文件夹,下面创建Devcie文件夹,存放驱动等文件,下面创建CMSIS和MM32F5260分别用于存放系统头文件与驱动。
复制官方库的HAL_LIb、Source、Include到MM32F5260文件夹下,最后其目录如下:
在这里插入图片描述

在Soucre目录下, 复制官方给出的GCC_StartAsm到文目录下面,提供启动的汇编文件。
同时复制mm32f5260_flash.ld到该目录下面,提供连接算法文件。
在工程的根目录再创建Core目录,下面创建app目录用于存入用户的代码文件,其结构如下:
在这里插入图片描述

在工程的根目录下面创建Debug目录,复制.pack包与寄存器文件MM32F5260.svd。
在这里插入图片描述
到此工程的文件准备完毕。
【makefile的编写】
1、Makefile我采用分块的书写,首先在device目录下面创建Device.mk,内容如下:

# 模块名_DIR 是上一层传递下来的参数,
# 是从工程根目录到该模块文件夹的路径# 向 C_SOURCES 中添加需要编译的源文件
C_SOURCES += $(wildcard $(Device_DIR)/MM32F5260/HAL_Lib/Src/*.c)
C_SOURCES += $(wildcard $(Device_DIR)/MM32F5260/Source/system_mm32f5260.c)# 向 C_INCLUDES 中添加头文件路径
C_INCLUDES += -I$(Device_DIR)/CMSIS/Core/Include
C_INCLUDES += -I$(Device_DIR)/MM32F5260/Include
C_INCLUDES += -I$(Device_DIR)/MM32F5260/HAL_Lib/Inc# 向 LIBDIR 中添加静态库文件路径
# LIBDIR += -L$(Libraries_DIR)/Lib
# 向 LIBS 中添加需要链接的静态库
# LIBS += -lxxxx# link script
LDSCRIPT = $(Device_DIR)/MM32F5260/Source/mm32f5260_flash.ld# 汇编文件宏定义c
AS_DEFS += # 汇编头文件目录
AS_INCLUDES += # 汇编源文件(starup)
ASM_SOURCES += $(Device_DIR)/MM32F5260/Source/GCC_StartAsm/startup_mm32f5260.S

在Makefile中,大部分与其他的工程都是一样的下面主要讲一下修改的地方
1、就是CPU的信息,由于MM32F5260是兼容cortex-m33的,所这我指定了CPU 为cortex-33。
2、就是指定汇编文件编译时要与提供的后缀一样,需要修改为.S(大写的S),我在前面执行make时是报错,最后查找出原因是后缀的原因:
$(BUILD_DIR)/%.o: %.S Makefile | $(BUILD_DIR)
@echo "[AS] < " @ <" @ <"@(AS) -c $(CFLAGS) $< -o $@
修改好这些后就可以执行make了
在这里插入图片描述
顺利的生成了固件。
【下载】
在根目录下面创建pyocd.yaml文件:

pack: ./Debug/MindMotion.MM32F5260_DFP.0.2.0.pack
target_override: MM32F5265E8PV
frequency: 24000000

首先要指定pack存放的路径,再指定MCU的型号
然后执行make flash就可以把固件烧写进开发板里面了:
在这里插入图片描述
【调试】
首先要安装Cortex-Debug插件
然后创建launch.json:

{// 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387"version": "0.2.0","configurations": [{"name": "Cortex Debug","cwd": "${workspaceFolder}","executable": "./build_exec/template.elf","request": "launch","type": "cortex-debug","targetId": "MM32F5265E8PV","runToEntryPoint": "main","servertype": "pyocd","svdFile": "./Debug/MM32F5260.svd","postRestartCommands": ["monitor reset"],}]
}

最后执行调试任务就可以:
在这里插入图片描述
到此基VSCODE的工程创建就结束了。
【经验】
就是编写makefile,再就是注意启动汇编的后缀文件。还有就是编译文件里面的注释需要更新一下。


http://www.hkcw.cn/article/riuiAYUQAv.shtml

相关文章

【AI论文】VF-Eval:评估多模态大型语言模型(MLLM)在生成人工智能生成内容(AIGC)视频反馈方面的能力

摘要&#xff1a;多模态大型语言模型&#xff08;MLLMs&#xff09;最近在视频问答领域得到了广泛研究。然而&#xff0c;现有的大多数评估都侧重于自然视频&#xff0c;而忽视了合成视频&#xff0c;例如人工智能生成的内容&#xff08;AIGC&#xff09;。与此同时&#xff0c…

Docker 镜像(或 Docker 容器)中查找文件命令

在 Docker 镜像&#xff08;或 Docker 容器&#xff09;中运行如下两个命令时&#xff1a; cd / find . -name generate.py它们的含义如下&#xff0c;我们来一行一行详细拆解&#xff0c;并结合例子讲解&#xff1a; ✅ 第一行&#xff1a;cd / ✅ 含义 cd 是“change dire…

DiskGenius专业版v6.0.1.1645:分区管理、数据恢复、备份还原,一应俱全!

各位小伙伴&#xff0c;大家好&#xff01;今天阿灿给大家带来一款超好用的分区工具&#xff0c;DiskGenius专业版。这款工具堪称电脑管理界的“瑞士军刀”&#xff0c;功能强大&#xff0c;现在出了新版本v6.0.1.1645&#xff0c;简繁中文单文件便携版&#xff0c;使用超方便。…

‌CDGP|数据治理的低效性:企业AI落地的另一大挑战

在数字化转型的浪潮中&#xff0c;人工智能&#xff08;AI&#xff09;已成为推动企业创新发展的重要力量。然而&#xff0c;尽管AI技术具有巨大的潜力和优势&#xff0c;但许多企业在尝试落地AI项目时却面临着重重挑战。其中&#xff0c;数据治理的低效性尤为突出&#xff0c;…

linux学习第19、20天(父子进程)

ps ajx -->查看pid&#xff0c;ppid&#xff0c;gid&#xff0c;sid 父子进程 父子进程相同&#xff1a; 刚fork后&#xff0c;data段、text段、堆&#xff0c;栈、环境变量、全局变量、进程工作目录位置、信号处理方式 父子进程不同&#xff1a; 进程id、返回值、各自的…

AI写作革命:重塑创作未来

人工智能写作技术&#xff1a;革新创作方式的智能利器 人工智能写作技术&#xff08;AI写作技术&#xff09;是指利用自然语言处理&#xff08;NLP&#xff09;、机器学习&#xff08;ML&#xff09;等人工智能技术&#xff0c;辅助或自动化完成文本的创作、编辑与优化。这一技…

法律大语言模型(Legal LLM)技术架构

目录 摘要 1 法律AI大模型技术架构 1.1 核心架构分层 1.2 法律知识增强机制 2 关键技术突破与对比 2.1 法律专用组件创新 2.2 性能对比(合同审查场景) 3 开发部署实战指南 3.1 环境搭建流程 3.2 合同审查代码示例 4 行业应用与挑战 4.1 典型场景效能提升 4.2 关…

深入理解 C# Razor Pages:构建现代 Web 应用的利器

在现代 Web 开发中&#xff0c;选择合适的框架至关重要。ASP.NET Core 提供了多种开发模式&#xff0c;其中 Razor Pages 因其简单性、高效性和易用性&#xff0c;成为构建页面导向 Web 应用的首选方案。相比于传统的 MVC&#xff08;Model-View-Controller&#xff09;模式&am…

AgenticSeek 本地部署教程(Windows 系统)

#工作记录 Fosowl/agenticSeek&#xff1a;完全本地的 Manus AI。 部署排错参考资料在文末 或查找往期笔记。 AgenticSeek 本地部署教程&#xff08;Windows 系统&#xff09; 一、环境准备 1. 安装必备工具 Docker Desktop 下载地址&#xff1a;Docker Desktop 官网 安装后启…

后台管理系统八股

项⽬地址&#xff1a;https://github.com/Xiaodie-888/Frontend.git 前端 https://github.com/Xiaodie-888/backend.git 后端 技术栈&#xff1a;Vue3ViteTyprscriptPiniaElement-plusVue-RouterExpress.jsMySQL 核⼼⼯作与技术&#xff1a; 基础组件封装&#xff1a;基于 Ele…

014校园管理系统技术解析:构建智慧校园管理平台

校园管理系统技术解析&#xff1a;构建智慧校园管理平台 在教育信息化快速发展的当下&#xff0c;校园管理系统成为提升学校管理效率、优化校园服务的重要工具。该系统集成院校管理、投票管理等多个核心模块&#xff0c;面向管理员、用户和院内管理员三种角色&#xff0c;通过…

SpringBoot2.3.1集成Knife4j接口文档

首先要查看项目中pom文件里面有没有swagger和knife4j的依赖&#xff0c;如果有的话删除&#xff0c;加入以下依赖 <!-- swagger --><dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-openapi3-spring-boot-starter</…

Abaqus/CAE操作介面

Abaqus/CAE操作介面: • 完全整合建模、分 析、工作管理與結 果評估。 • 對於Abaqus的各系 統&#xff0c;提供最完善的 介面。 • 使用中立的資料庫 檔案&#xff0c;獨立於硬體 設備。 • 客製化&#xff0c;成為應用 於特定問題之系統 。 • 選 單 (menu) 、圖 標 (ico…

垂起固定翼无人机应用及技术分析

一、主要应用行业 1. 能源基础设施巡检 电力巡检&#xff1a;适用于超高压输电线路通道的快速巡查&#xff0c;实时回传数据提升智能运检效率。 油田管道监测&#xff1a;利用长航时特性&#xff08;1.5-2小时&#xff09;对大范围管道进行隐患排查&#xff0c;减少人力巡…

DPDK与网络协议栈

DPDK与网络协议栈 DPDK简介实现使用DPDK收发数据通过UDP收发数据通过 TCP 收发数据 DPDK简介 DPDK 是是 Intel 提供的数据平面开发工具集&#xff0c;为&#xff08;IA&#xff09;处理器架构下用户高效的数据包处理提供函数以及驱动支持&#xff0c;不同于 Linux 下是以通用性…

51c大模型~合集134

我自己的原文哦~ https://blog.51cto.com/whaosoft/13956141 #Foveated Instance Segmentation 解决XR算力瓶颈&#xff0c;FovealSeg框架实现毫秒级IOI分割 本文共同第一作者为纽约大学研究生 Hongyi Zeng 和Wenxuan Liu。合作作者为 Tianhua Xia、Jinhui Chen、Ziyun…

基于51单片机和8X8点阵屏、独立按键的填充消除类小游戏

目录 系列文章目录前言一、效果展示二、原理分析三、各模块代码1、8X8点阵屏2、独立按键3、定时器04、定时器1 四、主函数总结 系列文章目录 前言 使用的是普中A2开发板。 【单片机】STC89C52RC 【频率】12T11.0592MHz 【外设】8X8点阵屏、独立按键 效果查看/操作演示&#x…

openharmony5.0.0中kernel子系统编译构建流程概览(rk3568)

概述 在梳理openharmony对linux内核做了哪些更改时&#xff0c;简单梳理了下kernel部分的编译构建流程&#xff0c;并根据源码做了简单论证。分享出来&#xff0c;希望对大家有所帮助。 系统版本:openharmony5.0.0 开发板:dayu200 编译环境:ubuntu22 执行流程 在kernel\l…

web攻防之SSTI 注入漏洞

知识简介 &#xff1a; 模版引擎和框架的区别 ssti的中文翻译 &#xff1a; 服务端的模版的注入 模版引擎 &#xff1a;前端的用于装饰优化html的模版 最简单的就是在腾讯会议中的聊天功能 框架 &#xff1a; 这个是一套独立存在的逻辑 如TP他是一个区别于php语法的后端逻辑…

【Linux】Linux 进程基础

参考博客&#xff1a;https://blog.csdn.net/sjsjnsjnn/article/details/125533127 进程 1.基本概念 课本概念&#xff1a;程序的一个执行实例&#xff0c;正在执行的程序等内核观点&#xff1a;担当分配系统资源&#xff08;CPU时间&#xff0c;内存&#xff09;的实体。 …