STM32G030C8T6:使用外部晶振配置LED灯闪烁

2023-12-13 06:06:24

本专栏记录STM32开发各个功能的详细过程,方便自己后续查看,当然也供正在入门STM32单片机的兄弟们参考;

本小节的目标是,使用STM32G030C8T6单片机,通过STM32CubeMX软件,配置并使用外部8MHz晶振,实现PB4引脚的LED灯每一秒钟闪烁一次;
涉及到的知识有:外部晶振的配置,配置引脚为输出,STM32CubeMX的使用
我是将PB4引脚接的LED,所以本小节是以PB4为例记录的,如果需要将其他引脚配置为LED灯,那将PB4改为其他对应的引脚即可。

1 新建工程

点击File 菜单下的New Project

在这里插入图片描述

选择芯片型号,如下图所示先输入芯片型号,目前这边输入STM32G030C8,

在这里插入图片描述

双击选择,就确定了芯片型号,界面会变成如下图所示

在这里插入图片描述

2 配置SWD下载引脚

如下图所示,在Pinout&Configuration 栏目的System Core 下,先点击SYS,再勾选Serial Wire 框,
配置好SWD 下载引脚设置:

在这里插入图片描述

3 配置RCC

如下图,先点击RCC,在HSE 配置中选择Crystal/Ceramic Resonator 外部晶振设

在这里插入图片描述

4 设置系统主频

如下图, 先点击Clock Configuration 栏目,按下图的1,2,3,4 步骤完成系统64MHZ 主频设置:

在这里插入图片描述

5 配置GPIO输出

按下图 的1,2,3 步骤完成PB4 引脚配置成GPIO 输出设置:

在这里插入图片描述
配置成功后如下图所示:
在这里插入图片描述

6 生成工程

按照下图的步骤,进行项目配置,项目名称和路径设置等,生成项目的类型选择STM32CubeIDE(我这里以STM32CubeIDE为例,如果你要试用keil5,那就选择MDK-RAM,如果要使用makefile,就选择Makefile),注意项目名称和路径不要有中文名;
在这里插入图片描述

最后全部设置完毕后点击create code,生成项目代码:

在这里插入图片描述

生成的工程如下图所示:
在这里插入图片描述

7 增加代码实现LED闪烁

点击上一步生成的.project文件,会打开STM32CubeIDE,然后在main.c中,输入以下代码,控制LED闪烁,如下图所示:

HAL_GPIO_TogglePin(GPIOB,GPIO_PIN_4);
HAL_Delay(500);

在这里插入图片描述
至此,编译并调试,即可成功实现LED的闪烁;

8 STM32CubeMX使用总结

STM32CubeMX是一款由STMicroelectronics开发的集成开发环境(IDE)工具,用于快速配置和生成基于STM32微控制器的项目。它提供了一个直观的图形界面,使开发人员能够轻松地进行微控制器的配置和初始化设置,包括引脚映射、时钟配置、外设配置等。

以下是使用STM32CubeMX的一般步骤:

下载和安装STM32CubeMX:
你可以从STMicroelectronics的官方网站下载适用于你的操作系统的最新版本的STM32CubeMX,并按照安装向导进行安装。

打开STM32CubeMX:
打开STM32CubeMX应用程序,你将看到一个空白的项目窗口。

创建一个新项目:
在项目窗口中,点击"New Project"按钮,选择你的STM32微控制器型号,并选择你的开发板。

配置微控制器:
在配置选项卡中,你可以配置引脚映射、时钟设置、外设配置等。根据你的项目需求,进行相应的配置。

引脚映射:在Pinout & Configuration选项卡中,你可以选择每个引脚的功能,如GPIO、UART、SPI等,并进行相应的映射设置。

时钟设置:在RCC Configuration选项卡中,你可以配置系统时钟和外设时钟的频率和源。

外设配置:在Peripherals选项卡中,你可以选择需要使用的外设,并进行相应的配置,如UART、SPI、I2C等。

生成代码:
点击"Project"选项卡,在右侧窗口中选择你想要生成的代码类型(例如,基于HAL库的代码),然后点击"Generate Code"按钮。STM32CubeMX将根据你的配置生成相应的初始化代码。

导入到IDE:
将生成的代码导入到你选择的集成开发环境(IDE)中,例如Keil、IAR等。在IDE中,你可以编写你的应用程序代码,并进行编译和调试。

开发和编程:
在IDE中编写你的应用程序代码,并使用相应的编程工具将代码烧录到STM32微控制器中。你可以使用调试器进行单步调试和观察变量的值,以确保代码的正确性和功能的正常运行。

总结起来,使用STM32CubeMX可以简化STM32微控制器的配置和初始化过程,提高开发效率。它提供了直观的图形界面,帮助开发人员轻松配置引脚映射、时钟设置和外设配置,并生成相应的初始化代码,使得开发过程更加便捷。通过将生成的代码导入到集成开发环境中,你可以编写应用程序代码并进行编译、调试和烧录,从而完成STM32微控制器的开发和编程工作。

文章来源:https://blog.csdn.net/AnChenliang_1002/article/details/134949311
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。