00:HAL库的认识

一:HAL库

开发现状:

1:下载

网站: https://www.st.com/zh/embedded-software/stm32cube-mcu-mpu-packages.html

去选择我们的系列

我们使用的是STM32F103C8t6的这个

继续一直向下拉点击这个;之后傻瓜步骤直接可以下载HAL的源码

已经从ST公司上面全部下载出来了hal库的源码; 下面我们进行分析hal库

2:分析HAL

A:_htmresc

这个文件夹里面没有什么用,放的是一些LoGo

B:Documentation

也没有什么用放的是STM32的一个PDF文件的介绍

C:Drivers

Drivers文件夹包含BSP,CMSIS和STM32H7xx_HAL_Driver三个子文件夹。

A:CMSIS

在\STM32Cube_FW_F1_V1.8.0\Drivers\CMSIS"

1:\STM32Cube_FW_F1_V1.8.0\Drivers\CMSIS\Device\ST\STM32F1xx\Include"
\STM32Cube_FW_F1_V1.8.0\Drivers\CMSIS\

A:Device

关于:\STM32Cube_FW_F1_V1.8.0\Drivers\CMSIS\Device"

文件的选取

stm32f1xx.h:这个文件是每个F1必须添加的。

HAL库:
这是ST提供的4个启动文件,分别适用于不同容量的STM32芯片。
这4个文件为:
startup_stm32f103x6.s
startup_stm32f103xb.s
startup_stm32f103xe.s
startup_stm32f103xg.s
其中,x6.s适用于小容量 产品;xb.s适用于中等容量产品;xe适用于大容量产品;xg适用于超大容量产品
这里的容量是指FLASH的大小.判断方法如下:
小容量:16K<=FLASH≤32K
中容量:64K≤FLASH≤128K
大容量:256K≤FLASH<=512k
超大容量:768K≤FLASH<=1024K
所以,请大家根据自己所用的STM32芯片选择不同的.s文件。
距离:STM32F103ZET6 ——> 字母“E”代表的为512K 大容量
STM32F103R8T6 ——> 数字“8”代表的为64K 中容量
-----------------------------------------------------------------------------------
4 6 (小容量)
16k 32K
8 B (中容量)
64K 128K
C D E (大容量)
256K 384K 512K
F G (超大容量)
768K 1024
————————————————

stm32f103xb.h:我们使用的为,stm32F1C8T6的FLASH为64K,为中容量的,使用我们选择:这个文件。

system_stm32f1xx.h:这个文件也需要添加。

\STM32Cube_FW_F1_V1.8.0\Drivers\CMSIS\Device\ST\STM32F1xx\Source\Templates"

system stm32f1xx.c:这个文件也添加进来。

startup stm32f103xb.s:选择启动汇编文件,我们使用的为ARM,STM32F1C8T6,为64K的FLASH。

B:Include

\STM32Cube_FW_F1_V1.8.0\Drivers\CMSIS\Include"

我们需要把这个6个工程全部包含到工程里面。

B:STM32F1xx_HAL_Driver

\STM32Cube_FW_F1_V1.8.0\Drivers\STM32F1xx_HAL_Driver"

E:Middlewares

该文件夹下面有ST和Third_Party 2个子文件夹。ST文件夹下面存放的是STM32相关的一些文件,包括STemWin和USB库等。Third_Party文件夹是第三方中间件,这些中间价都是非常成熟的开源解决方案

F:Projects文件夹


该文件夹存放的是ST官方的开发板的适配例程,每个文件夹对应一个ST官方的Demo板,根据型号的不同提供MDK和IAR等类型的例程。里面有很多实例,读者可以根据自己的需要来作为参考。比如我们要查看STM32H750相关工程,所以我们直接打开子文件夹STM32H750B-DK即可。里面有很多实例,我们都可以用来参考。这里大家注意,每个工程下面都有一个MDK-ARM子文件夹,该子文件夹内部会有名称为Project.uvprojx的工程文件,我们只需要双击它就可在MDK中打开工程。

G:Utilities文件夹


该文件夹是一些公用组件,也是主要为ST官方的Demo板提供的,在我们的例程中使用得不多。有兴趣的同学可以深入研究一下,这里我们不做过多介绍。

普通配置需要使用的文件:

二:HAL库框架结构

\STM32Cube_FW_F1_V1.8.0\Drivers\STM32F1xx_HAL_Driver"

三:keill配置

参考我的---16: KEil5的配置

CSDN

配置前的了解:

ST公司默认下载的中断分组为:4

这个是改了的

步骤

A:新建工程文件夹

 

B:Drivers

把从ST公司里面在下载的COPy到我们的文件加下面

BSP: 暂时没有放东西

CMSIS: \STM32Cube_FW_F1_V1.8.0\Drivers\CMSIS\Device"  和 \STM32Cube_FW_F1_V1.8.0\Drivers\CMSIS\Include"文件夹复制到下面。

SYSTEM

STM32F1xx_HAL_Driver:\STM32Cube_FW_F1_V1.8.0\Drivers\STM32F1xx_HAL_Driver"

复制到我们的文件夹下面。

C:其他文件夹

\STM32Cube_FW_F1_V1.8.0\Projects\STM3210E_EVAL\Templates\Src"

\STM32Cube_FW_F1_V1.8.0\Projects\STM3210E_EVAL\Templates\Inc"

复制到我们:

B:使用KEII建立工程

放入的地址:\Projects\DMK-ARM"

删除这2个文件夹

建立分组

配置KEILL

选择输出文件夹:

和上面一样选择输出文件夹 

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

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

相关文章

最新2023年行政区划、路网、土壤质地矢量数据

行政区划矢量数据是指用矢量格式表示的地理信息系统&#xff08;GIS&#xff09;数据&#xff0c;其中包含了行政区域的边界信息&#xff0c;如国家、省份、城市、区县、乡镇甚至村级的界限。这些数据通常以点、线、面的几何图形来表示具体的地理实体&#xff0c;并且每个实体都…

亚马逊erp跟卖采集之关键词采集

大家好&#xff0c;今天讲这款erp的跟卖采集关键词采集。 打开erp跟卖功能采集任务&#xff0c;点新增任务站点美国&#xff0c;有5种采集方式&#xff1a;关键词、店铺链接、类目ASIN。 选择关键词采集&#xff0c;这里我选择女童装&#xff0c;选择女童板鞋复制粘贴。页数我…

新书速览|HTML5+CSS3 Web前端开发与实例教程:微课视频版

《HTML5CSS3 Web前端开发与实例教程&#xff1a;微课视频版》 本书内容 《HTML5CSS3 Web前端开发与实例教程&#xff1a;微课视频版》秉承“思政引领&#xff0c;立德树人”的教育理念&#xff0c;自然融入多维度、深层次的思政元素&#xff0c;全面对标企业和行业需求&#x…

单向链表队列

实现单向链表队列的&#xff0c;创建&#xff0c;入队&#xff0c;出队&#xff0c;遍历&#xff0c;长度&#xff0c;销毁。 queue.h #ifndef __QUEUE_H__ #define __QUEUE_H__#include <stdio.h> #include <stdlib.h> #include <string.h> #define max 30…

大语言模型里的微调vs RAG vs 模板提示词

文章目录 介绍微调&#xff08;Fine-tuning&#xff09;定义优点&#xff1a;缺点&#xff1a;应用场景&#xff1a;技术细节 检索增强生成&#xff08;RAG&#xff0c;Retrieval-Augmented Generation&#xff09;定义优点&#xff1a;缺点&#xff1a;应用场景&#xff1a;技…

鸿蒙开发:Universal Keystore Kit(密钥管理服务)【密钥派生(ArkTS)】

密钥派生(ArkTS) 以HKDF256密钥为例&#xff0c;完成密钥派生。具体的场景介绍及支持的算法规格。 开发步骤 生成密钥 指定密钥别名。 初始化密钥属性集&#xff0c;可指定参数HUKS_TAG_DERIVED_AGREED_KEY_STORAGE_FLAG&#xff08;可选&#xff09;&#xff0c;用于标识基…

电机学-绪论

绪论 电机&#xff1a;根据电磁感应定律和电磁力定律实现机电能量转换和信号传递与转换的电磁机械装置。 电磁感应定律&#xff1a; BiliBili: 法拉第电磁感应定律 BiliBili: 楞次定律 BiliBili: 左手定则、右手定则、右手螺旋定则

数据结构JAVA

1.数据结构之栈和队列 栈结构 先进后出 队列结构 先进先出 队列 2.数据结构之数组和链表 数组结构 查询快、增删慢 队列结构 查询慢、增删快 链表的每一个元素我们叫结点 每一个结点都是独立的对象

对于多个表多个字段进行查询、F12查看网页的返回数据帮助开发、数据库的各种查询方式(多对多、多表查询、子查询等)。

对于多个表多个字段进行查询、F12查看网页的返回数据帮助开发、数据库的各种查询方式&#xff08;多对多、多表查询、子查询等&#xff09;。 一、 前端界面需要展现多个表的其中几个数据的多表查询。1. 三个表查询其中字段返回&#xff1a;&#xff08;用一下sql语句&#xff…

Redis的入门导读(一)

目录 单机架构 分布式系统 个人总结 一.Redis的介绍 二.Redis特性 三.Redis的快原因 四.Redis的应用场景 五.Redis的总结 由于Redis和分布式系统息息相关&#xff0c;因此我们需要先了解一下&#xff0c;分布式系统&#xff01; 接下来就是分布式系统的演化过程。 单…

JavaScript(7)——数组

JavaScript中数组的用法与Java差不多&#xff0c;但还是有一些区别 声明数组 语法: let 数组名 [数据1,数据2,数据...] let arr new Array(数据1,数据2,...数据n) 添加数据 数组.push()方法将一个或多个元素添加到数组末尾&#xff0c;并返回该数组新长度 <script>…

机器学习(五) -- 监督学习(7) --SVM1

系列文章目录及链接 上篇&#xff1a;机器学习&#xff08;五&#xff09; -- 监督学习&#xff08;6&#xff09; --逻辑回归 下篇&#xff1a; 前言 tips&#xff1a;标题前有“***”的内容为补充内容&#xff0c;是给好奇心重的宝宝看的&#xff0c;可自行跳过。文章内容被…

如何写好品牌宣传稿提升品牌曝光?看这篇文章就够了

在这个信息爆炸的时代&#xff0c;一句精炼而富有力量的宣传语&#xff0c;足以让品牌在万千竞争者中脱颖而出。撰写一篇成功的品牌宣传稿&#xff0c;不仅是对文字艺术的驾驭&#xff0c;也是对品牌灵魂的深刻洞察与精准传达&#xff0c;更是连接品牌与消费者情感与认知的桥梁…

蚁剑编码器编写——php木马免杀

蚁剑编码器编写——php木马免杀 我的想法是 木马要先免杀&#xff0c;能够落地&#xff0c;再去考虑流量层面的问题 举几个例子演示一下 命令执行与代码执行是有比较大的区别&#xff0c;蚁剑执行的是php代码&#xff0c;而system&#xff0c;proc_open,passthru,exec,shell_…

Adobe Illustrator 2021 for mac/Win:专业矢量图形设计的巅峰之作

Adobe Illustrator 2021作为Adobe公司旗下的旗舰矢量图形设计软件&#xff0c;无论是对于Mac还是Windows用户&#xff0c;都提供了强大而灵活的设计工具&#xff0c;让设计师们能够轻松应对各种复杂的图形设计挑战。这款软件以其卓越的性能、丰富的功能和友好的用户界面&#x…

后悔没早点考?揭晓六西格玛证书背后的惊人好处

在这个竞争激烈的时代&#xff0c;不断提升自我价值和专业能力是每个职场人士都需要面对的问题。而六西格玛证书&#xff0c;作为一个备受瞩目的职业资格认证&#xff0c;其背后的好处和价值已经远超出了人们的想象。深圳天行健企业管理咨询公司解析如下&#xff1a; 一、提升职…

MySQL Undo Log

总结自bojiangzhou undo log称为撤销日志或回滚日志。在一个事务中进行增删改操作时&#xff0c;都会记录对应的 undo log。在对数据库进行修改前&#xff0c;会先记录对应的 undo log&#xff0c;然后在事务失败或回滚的时候&#xff0c;就可以用这些 undo log 来将数据回滚到…

iPhone数据恢复篇:iPhone 数据恢复软件有哪些

问题&#xff1a;iPhone 15 最好的免费恢复软件是什么&#xff1f;我一直在寻找一个恢复程序来恢复从iPhone中意外删除的照片&#xff0c;联系人和消息&#xff0c;但是我有很多选择。 谷歌一下&#xff0c;你会发现许多付费或免费的iPhone数据恢复工具&#xff0c;声称它们可…

数据结构--二叉树相关性质

1.性质 1.满二叉树每层节点个数&#xff1a;等比数列 3.&#xff08;重要&#xff09;任意二叉树&#xff1a;度为0&#xff08;叶子节点&#xff09;的比度为2的永远多一个。。度&#xff1a;就是看有多少孩子 如下图解析&#xff1a;&#xff08;用推到归纳来分析&#xff…

【测开能力提升-fastapi框架】介绍简单使用

0. 前期说明 立了很多flag(开了很多专题)&#xff0c;但坚持下来的没几个。也干了很多测试工作(起初是硬件(Acoustic方向)测试 - 业务功能测试 - 接口测试 - 平台功能测试 - 数据库测试 - py自动化测试 - 性能测试 - 嵌入式测试 - 到最后的python测试开发)&#xff0c;最终还是…