【STM32Cube_03】使用GPIO点亮一个LED_Mculover666的博客-CSDN博客【三】零基础上手HAL库之—GPIO点灯_PlayCodes的博客-CSDN博客_hal_gpio_togglepin
目录
1 基础准备
1.1 硬件准备
1.2 软件准备
2 在MDK中编写、编译、下载代码
2.1 基础配置
2.2 代码编写
1 基础准备
1.1 硬件准备
首先,我们需要用四根杜邦线完成开发板与下载器的连接。
连接方式:DAPLINK上的3V3、SWD、SCK、GND,分别通过杜邦线与开发板上的VCC、SWDIO、SWCLK、GND相连。
对于驱动问题,若是使用Win10、Win11系统,则无需安装驱动,即插即用。在数据线插上电脑USB接口后,可从电脑设备管理器找到。
1.2 软件准备
打开STM32CubeMX,打开MCU SELECTOR,搜索并选中芯片STM32F407VET6:
时钟源配置(时钟树配置参看文章开头的两篇博客):
GPIO引脚配置:
① 初始化输出电平。输出为低电平时LED灯会亮;
② 输出的模式(推挽、开漏输出)。这里使用默认的推挽输出即可;
③ 是否上下拉引脚(上拉,下拉)。这里使用默认;
④ 引脚速度(低,中,高速)。流水灯对引脚速度没有特殊要求,低速即可;
⑤ 用户标签。在初始化完成后,对应的引脚和端口会有对应的宏定义在main.h中生成。
下载模式配置:DAPLINK选Serial Wire(如果不进行配置进行一次下载后,再一次下程序可能就下不进去)。
项目管理配置以及代码生成:
在进行大型项目编写时,常常要求模块化编程,以及对文件大小有所约束,一般情况下,选择以上两个选项(指Copy only the necessary librariy files 和 Generate peripheral initialization as pair of ‘.c/.h’ files per peripheral)可以大大的优化编程。在代码量和代码可读性上有所优化。 (本段话来自博客:【三】零基础上手HAL库之—GPIO点灯_PlayCodes的博客-CSDN博客_hal_gpio_togglepin)
都配置好后,点击右上角:
2 在MDK中编写、编译、下载代码
2.1 基础配置
STM32CubeMX生成的代码目录如下:
首先对keil进行配置:
点击Settings进入:
点击Settings进入(非常重要的一个):
2.2 代码编写
首先由main.h文件可知:
所以可如下编写引脚:
如果在STM32CubeMX的GPIO里面user label那边没有定义的话,那就写(GPIOA,GPIO_PIN_7);如果在里面定义成LED2的话,则还可以写成( LED2_GPIO_Port, LED2_Pin)。
HAL_GPIO_TogglePin:
【用于翻转某个GPIO引脚的电平状态。如果为0则变为1;如果为1则变为0】
【过于GPIO相关函数解的析(HAL库)可参考博客:GPIO相关函数解析(HAL库)_冬瓜~的博客-CSDN博客_gpiopinstate类型的值】
进行编译后下载:
点灯成功!!!
文章知识点与官方知识档案匹配,可进一步学习相关知识C技能树首页概览113281 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!