【单片机】STM32F070F6P6 开发指南(一)STM32建立HAL工程

文章目录

一、基础入门

f0 pack下载:

https://www.keil.arm.com/packs/stm32f0xx_dfp-keil/versions/

参考资料下载:

http://47.111.11.73/docs/boards/stm32/zdyz_stm32f103_warshipV4.html

STM32CubeMX下载:

https://www.st.com.cn/zh/development-tools/stm32cubemx.html

二、工程初步建立

使用STM32CubeMX进入到这里:

三、HSE 和 LSE 时钟源设置

四、时钟系统(时钟树)配置

配置系统时钟

接下来我们还需要配置AHB、APB1、APB2 和 Systick 的分频系数,为 STM32 的片上外设或 M0 内核设置对应的工作

时钟,为后续使用这些硬件功能做好准备.

五、GPIO 功能引脚配置

六、配置 Debug 选项

由于 CubeMX 默认把 Debug 选项关闭了,这样会给我们带来麻烦:用 CubeMX 生成的工

程编译下载一次后,后续再次下载就会提示错误,因此我们要把 Debug 选项打开。

打开SWD配置下载:

如果已经不小心关闭了 Debug 选项,那么下次下载的时候按住复位键,等到工程提示的时候松开复位键即可,因为 STM32 的芯片默认复位上电时的 Debug 引脚功能是开启的。

七、生成工程源码

Project Name:工程名称,填入工程名称(半角,不能有中文字符)

Project Location:工程保存路径,点击 Browse 选择保存的位置(半角,不能有中文字符)

Toolchain Folder Location:工具链文件夹位置,默认即可。

Application Structure:应用的结构,选择 Basic(基础),不勾选 Do not generate the main(),

因为我们要其生成 main 函数。

Toolchain/IDE:工具链/集成开发环境,我们使用 Keil,因此选择 MDK-ARM,Min Version 选

择 V5.27,这里根据 CubeMX 的版本可能会有差异,我们默认使用 V5 以上的版本即可。

Linker Settings 链接器设置:

Minimum Heap Size 最小堆大小,默认(大工程需按需调整)。

Minimum Stack Size 最小栈大小,默认(大工程需按需调整)。

MCU and Firmware Package 是 MCU 及固件包设置:

MCU Reference:目标 MCU 系列名称。

Firmware Package Name and Version:固件包名称及版本。

勾选 Use Default Firmware Location,文本框里面的路径就是固件包的存储地址,我们使用

默认地址即可。(这里因为我有两个版本的固件包,所以它默认使用最新的,这个关系不大,就

用新的)。这样工程生成的设置就设置好了

由于 CubeMX 默认勾选了复制所有的库,即工程中不使用到的代码也会复制进来,为了节

省 CubeMX 生成工程的空间,我们勾选生成工程时只复制用到的库(这一步是可选操作,大家

根据自己的实际选择)

八、生成工程源码

九、用户程序下载

设置好这里下载即可:

问询、帮助

你如果需要帮助,请看这里:

csharp 复制代码
https://docs.qq.com/sheet/DUEdqZ2lmbmR6UVdU?tab=BB08J2
相关推荐
金线银线还是铜线?4 小时前
米德方格MF9005/MF9006:低功耗光能利用的PMIC芯片解析
嵌入式硬件·物联网·iot·太阳能
Arciab4 小时前
51单片机_数码管显示
单片机·嵌入式硬件·51单片机
qq_401700414 小时前
FreeRTOS用事件组替代全局变量实现同步
单片机
zhongvv4 小时前
8位应广单片机与32位M0单片机开发差异总结
经验分享·单片机·嵌入式硬件
咸蛋-超人5 小时前
聊一聊 - STM32的堆和栈空间怎么分配
stm32·单片机·嵌入式硬件
raindrops.7 小时前
STM32之LL库使用(二)
stm32·单片机·嵌入式硬件
日更嵌入式的打工仔9 小时前
单片机基础知识:内狗外狗/软狗硬狗
笔记·单片机
v先v关v住v获v取10 小时前
12米折叠式高空作业车工作臂设计9张cad+三维图+设计说明书
科技·单片机·51单片机
单片机系统设计10 小时前
基于STM32的水质检测系统
网络·stm32·单片机·嵌入式硬件·毕业设计·水质检测
唔好理总之好犀利11 小时前
FreeRTOS中断内使用taskENTER_CRITICAL()进入临界区
单片机·嵌入式硬件