HAL库-入门STM32CubeMX第一篇

目录

1. CubeMX介绍

2. STM32CubeMX软件安装

2.1 STM32CubeMX软件安装

2.2 相关芯片包下载

3. 点亮第一只LED

3.1 GPIO参数

3.2 GPIO速度

3.3 Debug

3.4 Clock Configuration配置

3.5 Project Manger配置

3.6 Code Generator配置

3.7 GENERATE CODE生成文件

3.10 编译运行

入门STM32CubeMX第一课,点亮第一个LED灯:

1. CubeMX介绍

STM32用的CubeMX是ST公司出品的一款C代码生成器软件,它的图形化工具界面可以让使用者可视化地选择所需的芯片,并设置选用任一引脚、任一外设。另外的,CubeMX还提供了自动识别引脚冲突、设置时钟树、功耗预测等功能。使用CubeMX能减轻底层开发工作量,节约时间。

2. STM32CubeMX软件安装

2.1 STM32CubeMX软件安装

打开STM32CubeMX下载安装网站:https://www.st.com/en/development-tools/stm32cubemx.html

window系统则选择以下下载选择:

没有用户需要注册一个用户,因为后面在STM32CubeMX界面下载安装包的时候需要用到,不然需要手动下载相关芯片包。

下载安装完进入STM32CubeMX界面,然后进行登录

2.2 相关芯片包下载

登录完之后进行相关芯片包下载

相关芯片包选择如图所示:

3. 点亮第一只LED

下载完之后选择进入主页面选择:

进入之后搜索芯片进行选择:

3.1 GPIO参数

在固件库LED配置,需要配置GPIO引脚、输出速度、模式,故在STM32 CubeMx我们直接进行选择就行,让软件直接帮我们生成配置就行。

①第一步选择GPIO引脚,然后选择GPIO_Output推挽输出模式

3.2 GPIO速度

3.3 Debug

在SYS中选择Serial Wire使用SWD协议下载和调试,这一步如果没有选择则以后下载程序可能报错,导致无法下载进去。

Debug :
默认是关闭的,如果不使用调试器关闭即可,即No Debug;
在STM32CubeMX的SYS选项栏中有SW和JTAG协议选项,用户可以根据需要选择相应的协议;
JTAG调试接口(JTAG-DP)需要5个引脚;CubeMX中可选择5pin或4pin的JTAG,5pin比4pin多了一个复位引脚。
SW调试接口(SW-DP)需要2个引脚。二者之间有复用引脚。SW调试端口采用同步串行协议:SWCLK引脚为从主机到从机的时钟信号;SWDIO为双向数据信号。

ST-Link采用的是SW调试接口,选择Serial Wire;
J-Link采用的是JTAG调试接口,根据实际要求选择JTAG(4pin)或JTAG(5pin);
如果使用J-Link但是采用SWD协议,也可以选择Trace Asynchronous Sw;
Trace Asynchronous Sw 模式有时候也可以解决使用ST-Link烧录之后无法烧录和调试的情况

为了避免一次烧录之后无法下一次烧录或者调试的情况,推荐选择Serial Wire

如果在STM32CubeMX中选择SW协议,MDK也必须 选择SW协议。JTAG协议配置也同理。否则会造成下载和调试失败。在实际项目中SW协议使用使用的比较多,速度更快,占用的引脚更少,推荐配置成SW协议,即Serial Wire模式;

System Wake-Up :
设置低功耗模式下的自动唤醒功能,通过引脚PA10。

Timebase Source :
一般指HAL的时基,即HAL库中的uwTick,用于实现HAL_Delay()以及作为各种timeout时钟的基准。一般情况下直接选择默认的SysTick(嘀嗒定时器)来维护SYS Timebase Source即可,即直接放在SysTick_Handler()中断服务函数中,也就是下面的HAL IncTick()函数。

SYS不进行选择默认选项的后果:       程序将无法下载进入芯片中

解决方案:参考以下博主方法:

https://blog.csdn.net/qq_42789398/article/details/121191453

3.4 Clock Configuration配置

3.5 Project Manger配置

3.6 Code Generator配置

3.7 GENERATE CODE生成文件

①在keil5中生成LED的GPIO配置

②keil文件配置

3.10 编译运行

最后运行编译下载进去单片机里面

实物效果图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值