【STM32F4】HAL库 CubeMX(一)--------创建工程(点亮LED)

本文介绍了如何使用STM32CubeMX进行工程创建和配置,包括GPIO和时钟设置,以实现LED跑马灯实验。通过图形化界面,简化了代码生成和外设配置过程,适合STM32新手学习。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


# 前言 STM32CubeMX 是 ST 意法半导体近几年来大力推荐的STM32 芯片图形化配置工具,目的就是为了方便开发者, 允许用户使用图形化向导生成C 初始化代码,可以大大减轻开发工作,时间和费用,提高开发效率。STM32CubeMX几乎覆盖了STM32 全系列芯片。

在CubeMX上,通过傻瓜化的操作便能实现相关配置,最终能够生成C语言代码,支持多种工具链,比如MDK、IAR For ARM、TrueStudio等,省去了我们配置各种外设的时间,大大的节省了时间。

本博客将和大家一起学习基于STM32的CubeMX编程,并且结合正点原子的实验以便大家进一步学习。


一、创建工程

1、在主界面选择File–>New Project ,或者直接点击ACCEE TO MCU SELECTOR
在这里插入图片描述
2、在此搜索单片机型号,选择对应芯片
在这里插入图片描述
3、接下来看一下页面分布
在这里插入图片描述
①功能区:可以选择GPIO、EXIT、ADC、IIC等单片机功能;
②功能配置区:为自己选择的功能进行参数配置;
③图示区:可以看到自己配置的功能所用的引脚,并且可以直接对引脚点击配置相应功能。

例如:点击PF9,即可看到PF9可以配置的相应功能
在这里插入图片描述
点击GPIO_Output,出现以下页面即为成功(变为绿色)
在这里插入图片描述具体的操作我们在以后的学习中可以更好的理解和记忆

二、点亮LED(跑马灯实验)

1.引脚配置

1、参看单片机手册,LED对应的引脚(正点原子引脚为PF9、PF10);
2、在图示区找到PF9、PF10,分别点击,配置为GPIO_Output,如图所示。(图示区右下角可以查找引脚位置)
在这里插入图片描述
3、在功能区System Core中选择GPIO,功能配置区显示如下。
在这里插入图片描述
4、对于引脚的配置,参看库函数代码(正点原子)。
在这里插入图片描述
在这里插入图片描述
PF9、PF10配置相同

2.时钟配置

1、在功能区选择RCC,并且在High Speed Clock(HSE)选择Crystal/Ceramic Resonator
在这里插入图片描述
2、选择时钟配置栏,在时钟配置栏配置如下
在这里插入图片描述
在这里插入图片描述
此处是F4(84M)的时钟配置,F1如下(72M)
在这里插入图片描述

3.生成代码

1、在工程信息页面选择如下
在这里插入图片描述
在这里插入图片描述
2、一切准备就绪,可以创建了,点击
在这里插入图片描述
3、点击Open Project即可打开代码,页面弹出的附加东西都可以关闭。
在这里插入图片描述
在这里插入图片描述

4.跑马灯实验

1、在main内添加以下代码,即可实现500ms延时的跑马灯。

在这里插入图片描述
代码如下:

HAL_GPIO_WritePin(GPIOF, GPIO_PIN_9, GPIO_PIN_RESET);//PF9置低
	  HAL_Delay(500);//500ms延时
	  HAL_GPIO_TogglePin(GPIOF, GPIO_PIN_9);//翻转PF9
	  HAL_GPIO_TogglePin(GPIOF, GPIO_PIN_10);//翻转PF10

**注意上图代码所放位置。同一个工程可以多次配置,以便添加功能,所以把手写代码放置于BEGIN和END之间,就可以避免重复配置导致代码遗失。
在这里插入图片描述

总结

恭喜你已经完成了CubeMX的入门啦,接下来将持续更新CubeMX和HAL库配置STM32的串口、定时器、ADC、IIC等等

第一次写博客,有不正确的地方,各位大佬评论出来或者私信,谢谢。

在这里插入图片描述


针对于stm32f4xx芯片开发使用的hal版本 /** ****************************************************************************** * @file stm32f4xx_hal.h * @author MCD Application Team * @version V1.4.2 * @date 10-November-2015 * @brief This file contains all the functions prototypes for the HAL * module driver. ****************************************************************************** * @attention * * © COPYRIGHT(c) 2015 STMicroelectronics * * Redistribution and use in source and binary forms, with or without modification, * are permitted provided that the following conditions are met: * 1. Redistributions of source code must retain the above copyright notice, * this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright notice, * this list of conditions and the following disclaimer in the documentation * and/or other materials provided with the distribution. * 3. Neither the name of STMicroelectronics nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * ****************************************************************************** */
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值