STM32CubeIDE基础学习-STM32CubeIDE软件新增工程文件夹

STM32CubeIDE基础学习-STM32CubeIDE软件新增工程文件夹


文章目录

  • STM32CubeIDE基础学习-STM32CubeIDE软件新增工程文件夹
  • 前言
  • 第1章 添加文件夹
  • 第2章 添加文件路径
    • 2.1 相对路径方法
    • 2.2 绝对路径方法
  • 总结


前言

在编程的过程中,如果需要在原有的工程基础上新增其它的外设功能模块代码,比如OLED、LCD、SD卡等,那么就可以独立新建它们的独立文件夹来存放了。

HAL库的工程一般都是会习惯创建一个板级支持包文件夹来存放相关应用的文件,方便管理里面的代码文件。

下面就来看下文件夹的具体创建步骤过程:


第1章 添加文件夹

第一步:新建文件夹的步骤如下图所示:

在这里插入图片描述

按照标号的顺序来操作即可,要注意鼠标选中要新建的路径才行。

点击新建后就可以看到下面图片的操作界面了。

在这里插入图片描述

设置完之后就可以点击Finish了。

创建后的文件夹如下图所示:

在这里插入图片描述

第二步:现在虽然有了一个总文件夹,那么还需要在BSP文件夹里面再创建对应的应用文件夹和对应的.c/.h文件,创建后如下图所示:

在这里插入图片描述

在这里插入图片描述

按照上面的步骤新建添加完.c/.h文件后,最终文件效果如下图所示:

在这里插入图片描述

第三步:之后就可以把需要用到的.h头文件都包含进.c文件来,把和OLED相关的函数都定义在这个相关文件里面就可以了,方便管理代码。后面需要用到这个文件里面的内容时,直接引入这个文件的.h文件就可以了。

第2章 添加文件路径

在新建完文件后,如果需要使用这些文件里面的内容,则需要考虑一下这个文件的路径问题,如果文件路径添加不正确,则会无法正常打开该头文件的。

引入头文件的方法有多种,可以使用相对路径或绝对路径的方法进行添加。方法如下:

2.1 相对路径方法

鼠标右键点击工程名,选择Properties,进去设置,如下图所示:

在这里插入图片描述

在这里插入图片描述

进来之后按照标号顺序找到Include文件选项,点击Add进行添加即可。如果不明白添加格式,可以参考上面的写法,也可以看下面图片的层次关系:

在这里插入图片描述

添加完成后如下图所示:

在这里插入图片描述

最终在main文件里面添加该文件路径的样子如下图所示:

在这里插入图片描述

如果没有添加路径或路径错误,则会有提示错误如下图所示:

在这里插入图片描述

那么就需要检查添加正确的路径才行了。

2.2 绝对路径方法

使用绝对路径的方式可以直接在代码里面包含设置的路径,不需要再像相对路径那样每一个文件都需要设置一次比较麻烦,而绝对路径是在需要用到时直接拷贝粘贴改一下文件名字就可以了。

直接在代码添加方法如下图所示:

在这里插入图片描述

这样就不用担心路径设置不对的问题了,如果路径设置不对,编译时是会报错的,不信的话可以删除某个字符或者某点再编译验证下,绝对会报错的。

如果对这个绝对路径和相对路径不熟悉的朋友,可以到网上查找下相关资料了解,有比较详细的描述。


总结

这个新建文件夹的步骤不是特别复杂的,多操作几次就可以了,主要就是要注意文件路径的问题,其它基本没有什么的了。

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

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

相关文章

SQLite表添加主键

CREATE TABLE [user]([user_name] VARCHAR(128) NOT NULL, [address] VARCHAR(128) NOT NULL, [mobile] VARCHAR(15) NOT NULL, [user_id] INTEGER NOT NULL,CONSTRAINT pk PRIMARY KEY (user_id));CONSTRAINT pk PRIMARY KEY (user_id) pk是键名(添入你想填的名称&…

哈希表|202.快乐数

力扣题目链接 int getSum(int n) {int sum 0;while (n) {sum (n % 10) * (n % 10);n / 10;}return sum; }bool isHappy(int n){int sum getSum(n);int hash[820] {0};while (sum ! 1) {if (hash[sum] 1) {return false;} else {hash[sum];}sum getSum(sum);}return true…

关于做副业、做自媒体:说几句扎心的话

今天在某乎看到一个问题:想尝试自媒体,想了一个月了,都没想好怎么起步,咋整呀? 恰好昨天陪退休老妈去探店,有感而发,就来唠一唠。 一、退休老妈的副业经历 老妈去年年初开始,在某…

探索未来:2024年人工智慧驱动的 AI + 研发趋势

#2024 AI 辅助研发趋势# 当我们站在2024年的风口浪尖时,人工智慧辅助研发的格局即将发生翻天覆地的变化。2023年人工智慧的快速发展为各行业的突破性进步铺平了道路。从研发流程的数位转型,到 AI 开发工具2.0 的出现,未来充满了超越 Copilot…

C++中的内部类

一、内部类的概念 如果一个类定义在另一个类的内部,那么这个类就叫做内部类。(内部类其实和一个独立的类没有区别,只是它会受到外部类访问限定符以及类域的限制,且是外部类的友元) 如果B类是A类的内部类,…

基于数组的顺序表删除操作

删除算法需要注意&#xff1a; 1. 列表长度为0时不能再删除 2.每次删除后长度减一 3.输入删除的数据在原来列表中不存在&#xff0c;不需要改变原列表 #include <iostream> #define MAX 100; using namespace std;int search(int arr[],int len,int n) {for(int i0; i…

【2024泰迪杯】A 题:生产线的故障自动识别与人员配置 Python代码实现

【2024泰迪杯】A 题&#xff1a;生产线的故障自动识别与人员配置 Python代码实现 1 问题 一、问题背景 随着新兴信息技术的大规模应用&#xff0c;工业生产线的智能化控制技术日益成熟。自动生产线 可以自动完成物品传送、物料填装、产品包装和质量检测等过程&#xff0c;极…

LeetCode - 寻找数组的中心

先学习一下前缀和吧 LCR 012.寻找数组的中心LCR 012. 代码解析 在读题读到左侧元素之和等于右侧所有元素之和的时候&#xff0c;我觉得可以用前缀和&#xff0c;然后结合下面的示例&#xff0c;模拟了一下发现确实可以。 我的想法是搞两个数组&#xff0c;一个来存从左到右数…

微信小程序(五十六)逆地址解析示范

注释很详细&#xff0c;直接上代码 温馨提醒&#xff1a;记得给自己的key配额&#xff0c;基础操作与前提配置参考本专栏第五十四篇 新增内容&#xff1a; 1.逆地址解析基础示范 2.开放经纬度参数 3.只列举修改的js部分&#xff0c;前提配置请看 温馨提醒 源码&#xff1a; ind…

软件开发人员从0到1实现物联网项目:需求分析

文章目录 前言市场调研线下考察竞品参考 项目目标功能需求用户端功能需求商家功能需求系统管理功能需求 非功能需求性能安全性易用性扩展性可靠性 小结 前言 上文对实现自助棋牌室项目涉及到的技术做了调研&#xff0c;尤其是物联网技术。那接下来就是对需求进行一番分析了&am…

力扣 239. 滑动窗口最大值

题目链接 chatgpt写的代码&#xff0c; 首先这是个滑动窗口的问题&#xff0c;要用单调队列来解决&#xff0c;这个就是毋庸置疑的&#xff0c;就直接接受就行了 其次&#xff0c;不知道单调队列是啥&#xff0c;知道单调队列是啥了&#xff0c;又不知道单调队列该如何实现&…

王道机试C++第 5 章 数据结构二:队列queue和21年蓝桥杯省赛选择题Day32

目录 5.2 队列 1&#xff0e;STL-queue 课上演示&#xff1a; 基本代码展示&#xff1a; 2. 队列的应用 例:约瑟夫问题 No. 2 题目描述&#xff1a; 思路提示&#xff1a; 代码展示&#xff1a; 例&#xff1a;猫狗收容所 题目描述&#xff1a; 代码表示&#xff1…

蓝桥杯-List集合

目录 List集合实例化 List集合实例化步骤 常用方法 ArrayList方法 1&#xff1a;add(Object element) 2&#xff1a;size() 3&#xff1a;get(int index) 4&#xff1a;isEmpty() 5:contains(Object o) 6&#xff1a;remove(int index) 总结ArrayList list集合的特点…

Web服务器需要警惕的一些安全隐患

Web服务器需要警惕的一些安全隐患有哪些&#xff0c;今天德迅云安全就带您来了解下。熟悉了解了就知道怎么规避风险。不过无论是什么漏洞&#xff0c;都体现着安全是一个整体的真理&#xff0c;考虑Web服务器的安全性&#xff0c;必须要考虑到与之相配合的操作系统。 1.物理路径…

应用方案 | DCDC电源管理芯片MC34063A

DCDC电源管理芯片 MC34063A MC34063A 为一单片 DC-DC 变换集成电路&#xff0c;内含温度补偿的参考电压源&#xff08;1.25V&#xff09;、比较器、能有效限制电流及控制工作周期的振荡器&#xff0c;驱动器及大电流输出开关管等。外配少量元件&#xff0c;就能组成升压、…

Redis缓存、缓存穿透、缓存雪崩、缓存击穿

1.认识Redis缓存 先来认识一下缓存&#xff0c;再了解redis用作缓存时的作用和问题&#xff0c;以及如何解决redis缓存在的问题。 1.1.什么是缓存 1.2.缓存的优缺点(作用和成本) 2.redis缓存的作用 正常客户端请求服务器&#xff0c;服务器会直接访问数据库&#xff0c;这有…

Selenium自动化测试细节讲解

与以前瀑布式开发模式不同&#xff0c;现在软件测试人员具有使用自动化工具执行测试用例套件的优势&#xff0c;而以前&#xff0c;测试人员习惯于通过测试脚本执行来完成测试。 但自动化测试的目的不是完全摆脱手动测试&#xff0c;而是最大程度地减少手动运行的测试。自动化…

R语言系列2——R语言数据处理技巧

目录 写在开头1. 数据导入与导出1.1 基础操作详解1.1.1 导入数据1.1.2 导出数据 1.2 高级技巧详解1.2.1 自定义导入1.2.2 自定义导出 1.3 常见问题 2. 数据清洗基础2.1 缺失值处理2.1.1 删除含缺失值的行或列2.1.2 填充缺失值2.1.3 预测模型填充2.1.4 使用特定值填充 2.2 数据类…

【智能家居】东胜物联ODM定制ZigBee网关,助力能源管理解决方案商,提升市场占有率

背景 本文案例服务的客户是专业从事智能家居能源管理的解决方案商&#xff0c;其产品与服务旨在帮助用户监测、管理和优化能源消耗&#xff0c;以提高能源使用效率。 随着公司的扩张&#xff0c;为了增加市场占有率&#xff0c;他们希望找到更好的硬件服务支持&#xff0c;以…

mysql笔记:7. 索引

文章目录 索引含义和特点索引分类普通索引和唯一索引单列索引和组合索引全文索引空间索引 索引设计原则创建索引直接创建索引在已经存在的表上创建索引 删除索引 在关系数据库中&#xff0c;索引是一种可以加快数据检索速度的数据结构&#xff0c;主要用于提高数据库查询数据的…