IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> (STM32笔记)六、新建HAL库工程模板 -> 正文阅读

[嵌入式](STM32笔记)六、新建HAL库工程模板

我用的是正点的STM32F767来进行学习。之后的这个系列笔记开头未标明的话,用的也是这个板子。

六、新建HAL库工程模板

1、找到STM32CubeFX固件包(X为板子的型号)

将固件包解压
在这里插入图片描述
在这里插入图片描述

2、新建工程目录,复制需要的文件到工程目录

  1. 新建一个文件夹,在文件夹中新建一个USER文件夹、HALLIB文件夹(外设库文件夹,放置HAL库)、CORE文件夹(启动文件夹,放置内核)、OBJ文件夹(放置编译中介文件)
    在这里插入图片描述

  2. 在固件包中找到图片中的文件
    在这里插入图片描述

  3. Inc(外设程序头文件)、Src(外设程序源文件)文件夹放到HALLIB文件夹中。
    在这里插入图片描述

  4. startup_stm32f767xx.s(启动文件)放到CORE文件夹中,
    在这里插入图片描述

  5. 内核头文件文件放到CORE文件夹中。
    在这里插入图片描述

  6. 顶层头文件主头文件源文件放到USER文件夹中。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

3、新建工程

  1. USER文件夹里新建一个工程
    在这里插入图片描述
    在这里插入图片描述

  2. 按照自己板子的型号来选择创建类型
    在这里插入图片描述

  3. 环境选项中选择Cancel
    在这里插入图片描述

  4. 会发现文件夹中出现了一些文件,其中uvprojx是打开文件
    在这里插入图片描述

4、在MDK中设置头文件存放路径

  1. 打开文件管理器,并将启动文件startup_stm32f767xx.s)导入
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  1. 如果文件头像上有钥匙,就将启动文件startup_stm32f767xx.s)的只读属性取消勾选。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  2. 将其余几个文件夹和其中的.h.c文件导入,文件类型选择All files
    在这里插入图片描述
    其中有几个.c文件不需要,删除即可。
    在这里插入图片描述

  3. 把带钥匙的文件取消只读选项。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  4. 将头文件文件夹导入
    在这里插入图片描述
    在这里插入图片描述

注:软件不会沿着目录向下寻找,所以所有头文件必须精确到根目录)

5、配置MDK:全局宏定义等

  1. 根据不同的板子、不同的工程将不同的预编译全局宏定义标识符输入
    在这里插入图片描述
  2. 根据不同板子规格修改外部晶振
    在这里插入图片描述
  3. 勾选生成HEX工程文件选项
    在这里插入图片描述
  4. 设置编译中间文件的存放目录
    在这里插入图片描述

6、编写用户函数

  1. main.h#include "stm32f7xx_nucleo_144.h"删除
    在这里插入图片描述

  2. main.c函数中的内容删掉即可开始编程
    在这里插入图片描述

  3. 程序需注意的地方
    (1)程序末尾必须要有回车

7、修改修改相关文件参数适配开发板

  1. HALLIB文件夹中打开stm32f7xx_hal.h下的stm32f7xx_hal_conf.h
    找到#define HSE_VALUE,将后面的晶振改成板子的晶振,我是用的板子晶振是25MHz,所以把8000000U改成25000000U
    在这里插入图片描述
    在这里插入图片描述
  2. HALLIB文件夹中打开stm32f7xx_hal.h
    找到HAL_NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_4);,将优先级分组从4改为2,即HAL_NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_2);
    在这里插入图片描述

8、添加ALIENTEK系统文件夹SYSTEM

  1. 在目标文件夹找到SYSTEM文件夹,将其拷到USERHEADER所在的文件夹。
    在这里插入图片描述
  2. 将其内的c文件依次导入
    在这里插入图片描述
  3. 将三个c文件的头文件坐在目录导入
    在这里插入图片描述
  4. 编译–成功

9、导入到开发板

详情参考另一篇笔记(STM32笔记)三、ST-LINK下载

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-07-10 11:36:45  更:2021-07-10 11:37:17 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 18:27:34-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码