【stm32-新建工程-HAL库版本】

stm32-新建工程-HAL库版本

  • ■ 1. 下载STM32Cube官方固件包(F1/F4/F7/H7)
  • ■ 2. 新建HAL库版本MDK工程所需的文件夹
    • ■ 2.1 新建工程文件- XXX项目并在下面新建如下文件夹
    • ■ 2.2 向Drivers文件添加如下文件
    • ■ 2.3 向Mrddlewares文件添加文件
    • ■ 2.4 设置Output文件夹
    • ■ 2.5 设置 Projects
    • ■ 2.5 设置 User文件夹
  • ■ 3. 添加USE_HAL_DRIVER,STM32F103xE 和C/C++ h文件路径
  • ■ 4. 编译解决errer

■ 1. 下载STM32Cube官方固件包(F1/F4/F7/H7)

参考 STM32-新建工程-寄存器版本-下载相关STM32Cube官方固件包(F1,F4,F7,H7)
添加链接描述

■ 2. 新建HAL库版本MDK工程所需的文件夹

■ 2.1 新建工程文件- XXX项目并在下面新建如下文件夹

新建文件夹作用描述
Drivers硬件相关的驱动层文件
Mrddlewares存放中间层组件文件和第三方中间层文件
Output存存放工程编译输出文件 比如: .hex、 .bin、 .o 文件等
Projects存放 MDK 工程文件
User存放HAL库用户配置文件、main.c、中断处理文件,以及分散加载文件

■ 2.2 向Drivers文件添加如下文件

在这里插入图片描述

新建文件夹作用描述
BSP存放开发板板级支持包驱动代码,如各种外设驱动
CMISS存放 CMSIS 底层代码,如启动文件(.s 文件)等
STM32F1xx_HAL_Driver存放正点原子系统级核心驱动代码,如 sys.c、 delay.c 和 usart.c 等
SYSTEM存放 ST 提供的 F1系列HAL库驱动源码
  1. 向BSP添加LED,等板子驱动文件。

  2. 向BSP添加LCD,等板子驱动文件。

  3. 向BSP添加KEY,等板子驱动文件。

  4. 等。。。如下示例
    在这里插入图片描述
    在这里插入图片描述

  5. 向CMISS 添加 Devie文件夹
    D:\Project-ST\stm32F103HALNewPro\Drivers\CMSIS\Device\ST\STM32F1xx\Include 中留下三个文件
    在这里插入图片描述

  6. 向CMISS 添加 Include文件夹
    在 en.stm32cubef1\STM32Cube_FW_F1_V1.8.0\Drivers\CMSIS\Core\Include拷贝如下文件到Include
    在这里插入图片描述

  7. 向STM32F1xx_HAL_Driver中添加如下文件
    在这里插入图片描述

  8. 向SYSTM中添加如下文件
    在这里插入图片描述

■ 2.3 向Mrddlewares文件添加文件

Mrddlewares,用来存放第三方提供的中间层代码组件。

■ 2.4 设置Output文件夹

在这里插入图片描述

■ 2.5 设置 Projects

新建 MDK-ARM文件夹,
用Keil新建工程选择目录为MDK-ARM

如下图:选择项目目录为MDK-ARM 后会再该目录下生成工程文件。
在这里插入图片描述

■ 2.5 设置 User文件夹

用于存放用户编写的代码,如: HAL 库用户配置文件、 main.c 文件、中断处理文件,以及分散加载文件等
在这里插入图片描述

■ 3. 添加USE_HAL_DRIVER,STM32F103xE 和C/C++ h文件路径

在这里插入图片描述

■ 4. 编译解决errer

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

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

相关文章

YouCompleteMe插件安装方法简述

一、前言 YouCompleteMe是VIM中进行C/C 开发的重要工具,可以极大提升linux下C/C开发效率。 YCM需要高版本的gcc (8.0以上版本,支持C17) 和 vim(8.0以上,支持python3.6以上) 二、编译gcc_8.3 1. 获取源码 wget https:…

重磅消息:ONLYOFFICE8.1版本桌面编辑器发布:功能完善的 PDF 编辑器、幻灯片版式、改进从右至左显示、新的本地化选项等

目录 ONLYOFFICE介绍 PDF 编辑器 功能全面的 PDF 编辑器 文本编辑 页面处理 (添加、旋转、删除) 插入和调整各种对象,例如表格、形状、文本框、图像、TextArt、超链接、方程等。 此外 PDF 表单 文本文档编辑器更新内容 页面颜色 页面…

浅析Resource Quota中limits计算机制

前言 在生产环境中,通常需要通过配置资源配额(Resource Quota)来限制一个命名空间(namespace)能使用的资源量。在资源紧张的情况下,常常需要调整工作负载(workload)的请求值&#xf…

pytorch十大核心操作

PyTorch的十大核心操作涵盖了张量创建、数据转换、操作变换等多个方面。以下是结合参考文章信息整理出的PyTorch十大核心操作的概述: 张量创建: 从Python列表或NumPy数组创建张量。使用特定值创建张量,如全零、全一、指定范围、均匀分布、正…

Python (Ansbile)脚本高效批量管理服务器和安全

1、简介 在现代 IT 基础设施中,管理大量服务器是一项复杂而繁琐的任务。特别是在检查服务器的存活状态以及 SSH 登录等任务上,手动操作非常耗时且容易出错。本文将介绍如何使用 Python 脚本实现对多台服务器的批量检查和管理,包括检查服务器…

【应届应知应会】Linux常用指令

SueWakeup 个人主页:SueWakeup 系列专栏:学习技术栈 个性签名:保留赤子之心也许是种幸运吧 本文封面由 凯楠📸友情提供 目录 文件与目录管理 目录操作命令: ls [选项] [目录或文件] mkdir 文件操作命令&#xf…

幻兽帕鲁Palworld樱花版本服务器一键开服联机

1、登录服务器(百度莱卡云) 1.1、第一次购买服务器会安装游戏端,大约5分钟左右,如果长时间处于安装状态请联系客服 2、在启动中调整游戏参数 2.1、重启服务器,等待running出现,或者运行时间变为灰色&#x…

vue 组件下 img 标签动态传入不展示

效果 解决办法&#xff1a; require() <titleComponent:title"业务工作概览":src"require(/assets/imgs/evaluation/overviewStatistics.png)"></titleComponent> 效果&#xff1a;

Python输入与输出基础

Python输入与输出基础 引言 Python是一种非常直观且功能强大的编程语言&#xff0c;它允许用户轻松地处理输入和输出操作。无论是从用户那里获取数据&#xff0c;还是将结果展示给用户&#xff0c;Python都提供了简单易用的函数和方法。 一、输入数据 在Python中&#xff0c…

为什么javaer认为后台系统一定要用java开发?

在开始前刚好我有一些资料&#xff0c;是我根据网友给的问题精心整理了一份「java的资料从专业入门到高级教程」&#xff0c; 点个关注在评论区回复“666”之后私信回复“666”&#xff0c;全部无偿共享给大家&#xff01;&#xff01;&#xff01;公司有两个开发团队&#xf…

【智能算法应用】麻雀搜索算法在物流配送中心选址的应用(无待选配送中心)

目录 1.算法原理2.数学模型3.结果展示4.参考文献5.代码获取 1.算法原理 【智能算法】麻雀搜索算法&#xff08;SSA&#xff09;原理及实现 2.数学模型 模型假设 待定物流配送中心的库存总能满足需求点的需求不考虑从工厂到待定物流配送中心的运输成本不考虑选定区域内待确定…

一次tcpdump抓包过程

#查询网卡 tcpdump -D # 监听 21100 端口 网卡ens192 &#xff08;不知道网卡&#xff0c;可以直接不输入 -i 网卡&#xff09;TCP数据&#xff0c;等待一段时间&#xff0c;执行CtrlC&#xff0c;终止程序 tcpdump -x -s 0 -w /tmp/123.dump -i ens192 -p tcp port 21100 #…

【大数据】—量化交易实战案例双均线策略(移动平均线)

声明&#xff1a;股市有风险&#xff0c;投资需谨慎&#xff01;本人没有系统学过金融知识&#xff0c;对股票有敬畏之心没有踏入其大门&#xff0c;今天用另外一种方法模拟炒股&#xff0c;后面的模拟的实战全部用同样的数据&#xff0c;最后比较哪种方法赚的钱多。 量化交易…

Android 添加自己的时钟小部件

小部件&#xff0c;也叫微件&#xff0c; 它的介绍参考官网 应用 widget 概览 https://developer.android.google.cn/develop/ui/views/appwidgets/overview?hlzh-cn 直接上图&#xff0c;原生系统上&#xff0c;时钟应用的小部件效果。 我也整一个。 1.创建小部件布局文…

基于Python+Flask+MySQL+HTML的B站数据可视化分析系统

FlaskMySQLVue 基于PythonFlaskMySQLHTML的B站数据可视化分析系统 项目采用前后端分离技术&#xff0c;项目包含完整的前端HTML&#xff0c;以及Flask构成完整的前后端分离系统 爬虫文件基于selenium&#xff0c;需要配合登录账号 简介 主页 登录页面&#xff0c;用户打开浏…

如何在线上快速定位bug(干货)

想必有许多人都想我刚进公司一样不会快速定位线上bug吧&#xff0c;不会快速定位bug会大大降低我们的开发效率&#xff0c;随之而来的就是工作质量下降、业绩下滑。 我总结了一些我常用的线上定位技巧&#xff0c;希望能帮助到大家&#xff01; 我这里以使用阿里云日志分析作…

[Linux] 文件/目录命令

pwd print working directory cd change directory cd #返回主目录 cd ..返回上级目录 cd . 不动 cd ~ 用户名 进入某用户的主目录 mkdir mkdir 目录名 mkdir -p xx/yy/zz #一次创建多重目录 rmdir remove directory 删除空目录&#xff0c;只能删除空目录&#xff0c;别的不能…

2021年12月电子学会青少年软件编程 中小学生Python编程等级考试三级真题解析(选择题)

2021年12月Python编程等级考试三级真题解析 选择题&#xff08;共25题&#xff0c;每题2分&#xff0c;共50分&#xff09; 1、小明在学习计算机时&#xff0c;学习到了一个十六进制数101,这个十六进制数对应的十进制数的数值是 A、65 B、66 C、256 D、257 答案&#xff…

Linux CentOS 宝塔 Suhosin禁用php5.6版本eval函数详细图文教程

方法一&#xff1a;PHP_diseval_extension禁用 Linux CentOS 禁用php的eval函数详细图文教程_centos php 禁用 eval-CSDN博客 这个方法make报错&#xff0c;懒得费时间处理&#xff0c;直接用第二种 方法二&#xff1a;suhosin禁用 不支持PHP8&#xff0c;官方只支持PHP7以下…

# bash: chkconfig: command not found 解决方法

bash: chkconfig: command not found 解决方法 一、chkconfig 错误描述&#xff1a; 这个错误表明在 Bash 环境下&#xff0c;尝试执行 chkconfig 命令&#xff0c;但是系统找不到这个命令。chkconfig 命令是一个用于管理 Linux 系统中服务的启动和停止的工具&#xff0c;通常…