STM32建立工程问题汇总

news2024/10/5 8:08:17

老版本MDK,例如MDK4

工程内容如下:

User文件夹中存放main.c文件,用户中断服务函数(stm32f1xx.it.c),用户配置文件(stm32f1xx_hal_conf.h)等用户程序文件,或者mdk启动程序。

obj文件夹中存放hex或者mdk启动程序。类似于mdk5中的output文件夹

CORE、Libraries、Obj、object、User等大部分工程内容都为系统文件(有的还有start文件夹也是是底层启动文件),可由对应芯片的固件包中获取,而需要移植或者编辑的文件都放在自己建立的文件夹里。

类似于外设,led,key,sys,delay等文件放在自己建的文件夹中,即上述例工程中的MY_wen_jian文件夹,如图:

MDK5

使用了正点原子的工程模版,工程文件夹结构如下:

在这种工程下,

output中存放编译后输出的hex文件;

Projects文件夹下存放工程文件,包括:MDK-ARM,用于存放MDK工程;

User文件夹下还是存放用户程序文件如

Drivers文件夹下面存放驱动层代码,包括:
    1,BSP:正点原子提供的板级支持包驱动代码(原HARDWARE文件夹下的代码),如:LED、BEEP、KEY、EXTI、TIMER、WDG...等
    2,CMSIS:ARM提供的CMSIS代码(主要包括各种头文件和启动文件(.s文件),为了方便使用,减少占用空间,我们进行了精简)
    3,STM32F1xx_HAL_Driver:ST提供的F1xx HAL库驱动代码,如下图:

BSP文件夹中存放各种外设程序,SYSTEM文件夹中存放delay、sys、usart等文件,如下图:

至于 Middlewares(中间层)文件夹中存放 中间层组件代码,包括:
    1,正点原子提供的中间层代码:USMART、MALLOC、TEXT、T9INPUT、PICTURE、GUI、MJPEG、各种ATK开头的LIB、NES、SMS、QR_ENCODE等
    2,第三方中间层代码:FATFS、USB、LWIP、各种OS、各种GUI等 
对于我来说暂时用不到。

不使用正点原子模版工程文件如下:

模版个文件内容大致一样。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1707808.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GIT提交:.husky/pre-commit: line 2: .husky/_/husky.sh: No such file or directory

GIT提交:.husky/pre-commit: line 2: .husky/_/husky.sh: No such file or directory 一些项目添加了代码提交校验和格式化,在windows下会忽略.husky下文件提交导致git数据丢失。 处理方案: 方案01:补齐缺失的文件 1.1 项目根…

最新斗音评论区截流拓客,自动引流【引流软件+使用教程】

面对社交媒体的蓬勃生长,加粉和拓展客户群成为品牌及个体的当务之急。新推出的一款技术工具恰到好处地迎合了这一需求,提供了一个多功能、适用性强的增粉与互动解决方案。该工具与抖音平台的所有版本兼容,消除了对特定版本的依赖。 利用这一…

微服务架构-聚合设计模式

微服务架构-聚合设计模式 聚合器(Aggregator)设计模式:用于将来自多个微服务的数据,聚合成一个统一的响应,提供给客户端。 聚合模式的核心思想:是使用一个聚合器服务(Aggregator Service&#…

greendao实现增删改查

说明:最近碰到一个需求,在安卓上使用greendao框架,实现增删改查数据 效果图: step1: // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript {repositories {go…

26计算机操作系统408考研--操作系统处理机调度篇章(五)

文章目录 一、调度简介死锁一、调度简介 计算机系统中,处理器和内存资源会出现供不应求的情况,特别是多个I/O设备与主机交互,作业不断进入系统,或者是多个批处理作业在磁盘的后备队列中等待进入内存的情况。操作系统在管理有限的资源的同时,需要考虑如何选取进入内存的作…

破解App渠道归因难题,Xinstall助你实现精准数据追踪!

在移动互联网时代,App的推广和运营面临着诸多挑战。其中,渠道归因问题一直困扰着众多推广者。如何准确追踪用户来源,分析不同渠道的推广效果,成为了摆在推广者面前的一大难题。然而,有了Xinstall的出现,这一…

LabVIEW软件需求分析文档内容和编写指南

编写LabVIEW软件需求分析文档(Software Requirements Specification, SRS)是软件开发的关键步骤之一。以下是详细的内容结构、编写指南和注意事项: 内容结构 引言 项目背景:简要介绍项目背景和目的。 文档目的:说明需…

AI Agent教育行业落地案例

【AI赋能教育】揭秘Duolingo背后的AI Agent,让学习更高效、更有趣! ©作者|Blaze 来源|神州问学 引言 随着科技的迅猛发展,人工智能技术已经逐步渗透到我们生活的各个方面。而随着AI技术的广泛应用,教育培训正引领着一场新的…

双指针法和链表练习题(2024/5/28)

1面试题 02.07. 链表相交 给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回 null 。 图示两个链表在节点 c1 开始相交: 题目数据 保证 整个链式结构中不存在环。 注意&#xf…

【云原生】Kubernetes----POD调度策略

目录 引言 一、Pod调度策略 (一)基本概述 (二)调度原则 (三)Predicate常见算法 (四)优先级排序 (五)调度过程 1.过滤阶段 2.优先级排序 3.选择最优…

Python 点云处理-点云半径滤波

点云半径滤波 一、介绍二、代码示例三、结果示例其他参考:C++ 中点云半径滤波 一、介绍 点云半径滤波:删除点云一定范围内没有达到足够多领域的所有点云。通俗的讲:就是要求点云P在半径为R内需要有M个领域点,若在点P的R范围内领域点个数大于M个,则保留该点云,领域点个数…

OrangePi AIpro初识及使用大模型GPT-Neo-1.3B测试

OrangePi AIpro介绍 1.1. 开发板简介 Orange Pi AI Pro 开发板是香橙派联合华为精心打造的高性能AI 开发板,其搭 载了昇腾AI 处理器,可提供8TOPS INT8 的计算能力,内存提供了8GB 和16GB 两种版本。可以实现图像、视频等多种数据分析与推理…

Java | Leetcode Java题解之第108题将有序数组转换为二叉搜索树

题目: 题解: class Solution {Random rand new Random();public TreeNode sortedArrayToBST(int[] nums) {return helper(nums, 0, nums.length - 1);}public TreeNode helper(int[] nums, int left, int right) {if (left > right) {return null;}…

5 分钟快速上手图形验证码,防止接口被恶意刷量!

5 分钟快速上手图形验证码,防止接口被恶意刷量! 大家好,我是程序员小白条,今天来给大家介绍一个快速实现图形验证码的优秀框架 AJ-Captcha。 需求分析 如果注册接口没有验证码这种类型的限制,很容易会被刷量&#x…

3D Slicer:从入门到精通——数据模块之DICOM

DICOM 文章目录 DICOM概述DICOM简介Slicer DICOM数据库DICOM插件 如何操作创建DICOM数据库将DICOM文件读入场景DICOM导入DICOM加载 从DICOM数据库中删除数据将数据从场景导出到DICOM数据库将数据从场景导出到DICOM文件DICOM网络传输DICOMweb网络传输 查看DICOM元数据 面板及其用…

Redis常见基本类型(5)-List, Set

List 命令小结 命令及解释时间复杂度lpush/rpush key value[key value...](向右/左端插入元素)O(k), k是元素个数linsert key before | after pivot value(在某个坐标之前/右插入元素)O(n), n是pivot距离头尾的距离lrange start end(获取从start到end部分的元素)O(s n): s是…

特朗普竞选带火PoliFi,以Bitget为例

以特朗普系列Meme币为代表的政治金融(PoliFi)概念币市场正在掀起热潮,前美国总统特朗普(Donald Trump)在本月稍早公开力挺加密货币,接着又在周二宣布接受比特币、以太币、SOL、USDC、DOGE…等政治献金,让相关通证高涨。 据CoinGecko数据&…

系统架构设计师【第1章】: 绪论 (核心总结)

文章目录 1.1 系统架构概述1.1.1 系统架构的定义及发展历程1.1.2 软件架构的常用分类及建模方法1.1.3 软件架构的应用场景1.1.4 软件架构的发展未来 1.2 系统架构设计师概述1.2.1 架构设计师的定义、职责和任务1.2.2 架构设计师应具备的专业素质1.2.3 架构设计师的知识…

linux开发之设备树基本语法一

设备树的根节点 设备树子节点和子子节点,子节点在根节点范围内 包含子节点以及子子节点 节点名称 比如这里led就是这个gpio的小名,可以直接用 gpio22020101是这里的名字,也就是要用这个gpio,符号后面的一串数字使用了这个gpio的寄存器地址,因为可能会用很多gpio,所以加入寄存…

纯前端怎么实现不同标签页下的数据通信

前言 我记得之前有做过这样的一个需求——可以简化的看作为一个 TODO List ,我打开了两个 tab 页,都是对应这个 TODO List 。 然后我在 A 页面新增一个,不出意外的话,在 B 页面是看不到的。产品当时跟我提了一下这个&#xff0c…