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.rhkb.cn/news/276046.html

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

相关文章

微信小程序-day01

文章目录 前言微信小程序介绍 一、为什么要学习微信小程序?二、微信小程序的历史创建开发环境1.注册账号2.获取APPID 三、下载微信开发者工具1.创建微信小程序项目2.填写相关信息3.项目创建成功 四、小程序目录结构项目的主体组成结构 总结 前言 微信小程序介绍 微信小程序&…

【OceanBase诊断调优 】 —— 合并问题如何排查?

最近总结一些诊断OCeanBase的一些经验,出一个【OceanBase诊断调优】专题,也欢迎大家贡献自己的诊断OceanBase的方法。 1. 前言 OceanBase 数据库的存储引擎基于 LSM-Tree 架构,将数据分为静态基线数据(放在 SSTable 中&#xff…

留学生课设|R语言|研究方法课设

目录 INSTRUCTIONS Question 1. Understanding Quantitative Research Question 2. Inputting data into Jamovi and creating variables (using the dataset) Question 3. Outliers Question 4. Tests for mean difference Question 5. Correlation Analysis INSTRUCTIO…

有趣的前端知识(三)

推荐阅读 有趣的前端知识(一) 有趣的前端知识(二) 文章目录 推荐阅读JS内置对象JS外部对象BOM模型history对象screen对象navigator对象 DOM(文档对象模型)DOM的方法(对于节点的操作&#xff09…

金蝶BI方案能解决云星空数据分析痛点吗?

金蝶云星空作为一个主攻企业管理流程的软件确实立下了汗马功劳,但一到数据分析方面那就阻碍重重了。直接的感受是分析步骤多且复杂,数据展现不够直观易懂,有些分析指标的计算真的很难实现,跨部门跨组织计算指标、合并账套什么的能…

vscode 向下复制当前行(即visual studio 中的Ctrl + D)功能快捷键

参考:https://blog.csdn.net/haihui1996/article/details/87937912 打开vscode左下角键盘快捷键设置,找到copy line down,即可查看当前默认快捷键为“shift Alt ↓” 双击快捷键,输入自己想要的快捷组合,如CtrlD,然…

尚硅谷SpringBoot3笔记 (二) Web开发

Servlet,SpringMVC视频推荐:53_尚硅谷_servlet3.0-简介&测试_哔哩哔哩_bilibili HttpServlet 是Java Servlet API 的一个抽象类,用于处理来自客户端的HTTP请求并生成HTTP响应。开发人员可以通过继承HttpServlet类并重写其中的doGet()、do…

给电脑加硬件的办法 先找电脑支持的接口,再买相同接口的

需求:我硬盘太小,换或加一个大硬盘 结论:接口是NVMe PCIe 3.0 x4 1.找到硬盘型号 主硬盘 三星 MZALQ512HALU-000L2 (512 GB / 固态硬盘) 2.上官网查 或用bing查 非官方渠道信息,不确定。

[论文笔记]LLaMA: Open and Efficient Foundation Language Models

引言 今天带来经典论文 LLaMA: Open and Efficient Foundation Language Models 的笔记,论文标题翻译过来就是 LLaMA:开放和高效的基础语言模型。 LLaMA提供了不可多得的大模型开发思路,为很多国产化大模型打开了一片新的天地,论文和代码值…

uniapp运行钉钉小程序

因项目原因,公司需要在钉钉里面开发小程序。之前用uniapp开发过app,H5,小程序。还真没尝试过钉钉小程序,今天就简单的记录下uniapp运行钉钉小程序中的过程。 在项目目录新建package.json文件,在文件中添加如下代码&am…

医学图像目标跟踪论文阅读笔记 2024.03.08~2024.03.14

“Inter-fractional portability of deep learning models for lung target tracking on cine imaging acquired in MRI-guided radiotherapy” 2024年 期刊 Physical and Engineering Sciences in Medicine 医学4区 没资源,只读了摘要,用的是U-net、a…

解决iview表格固定列横向滚动条无法拖动问题

问题描述: iview的table添加固定列以后,滚动条在固定列下面无法拖动,只能在滚动区域有所反应 解决办法 【写入main.js引入的全局文件时不需要::v-deep; 写入单个文件需要加::v-deep】 方法一:【带合计行也适用】 //解决iview表…

Unity资源热更新----AssetBundle

13.1 资源热更新——AssetBundle1-1_哔哩哔哩_bilibili Resources 性能消耗较大 Resources文件夹大小不能超过2个G 获取AssetBundle中的资源 打包流程 选择图片后点击 创建文件夹,Editor优先编译 打包文件夹位置 using UnityEditor; using UnityEngine; public cla…

计算机网络——OSI网络层次模型

计算机网络——OSI网络层次模型 应用层表示层会话层传输层TCP和UDP协议复用分用 网络层数据链路层物理层OSI网络层次模型中的硬件设备MAC地址和IP地址MAC地址IP地址MAC地址和IP地址区别 OSI网络层次模型通信过程解释端到端点到点端到端和点到点的区别 我们之前简单介绍了一下网…

idea如何使用,从激活开始

idea到期后激活使用 如何使用 点击阅读 idea分享

HTML5、CSS3面试题(二)

上一章:HTML5、CSS3面试题(一) 哪些是块级元素那些是行内元素,各有什么特点 ?(必会) 行内元素: a、span、b、img、strong、input、select、lable、em、button、textarea 、selecting 块级元素&#xff1…

阿里云免费证书改为3个月,应对方法很简单

情商高点的说法是 Google 积极推进90天免费证书,各服务商积极响应。 情商低点的话,就是钱的问题。 现在基本各大服务商都在2024年停止签发1年期的免费SSL证书产品,有效期都缩短至3个月。 目前腾讯云倒还是一年期。 如果是一年期的话&#x…

机器学习-0X-神经网络

总结 本系列是机器学习课程的系列课程,主要介绍机器学习中神经网络算法。 本门课程的目标 完成一个特定行业的算法应用全过程: 懂业务会选择合适的算法数据处理算法训练算法调优算法融合 算法评估持续调优工程化接口实现 参考 机器学习定义 关于机…

前端实现文件预览(pdf、excel、word、图片)

需求:实现一个在线预览pdf、excel、word、图片等文件的功能。 介绍:支持pdf、xlsx、docx、jpg、png、jpeg。 以下使用Vue3代码实现所有功能,建议以下的预览文件标签可以在外层包裹一层弹窗。 图片预览 iframe标签能够将另一个HTML页面嵌入到…

ArrayList和LinkedList区别

ArrayList和LinkedList是两个集合类,用于存储一系列的对象引用(references)。例如我们可以用ArrayList来存储一系列的String或者Integer。 1 问题 那么ArrayList和LinkedList在性能上有什么差别呢?什么时候应该用ArrayList什么时候又该用LinkedList呢&am…