stm32cubemx使用之实现点灯大业(代码片段)

何事误红尘 何事误红尘     2023-01-15     533

关键词:

一、概述

本文主要是通过实现闪灯,记录下STM32CubeMX的基本使用方法。
File–新建工程–选择芯片,之后是这个样子:

下面开始进行配置。

二、Pinout&Configuration

2.1 开启debug模式

首先需要开启debug模式,避免忘记。第一次使用没有修改这里,结果程序下载一次,再也下载不进去了。找了半天原因,才发现是这里。

2.2 设置时钟源

通常使用,都会使用外部晶振。比如M3核,经常是8M + 32.768K,所以这里直接选择外部晶振:

2.3 设置LED的GPIO

根据原理图,选择对应的IO口。在上面单击,会出现该IO支持的功能。因为是点灯,选择了通用输出:

选完IO模式后,可以在IO上右键,选择Enter User Label:

之后输入自定义的命名,我通常选择和原理图保持一致:

2.4 查看调整配置

现在调试模式、时钟源、IO选择都已经配好,可以查看状态:

左侧选择需要详细设置的外设,比如GPIO。
中间部分可以进一步配置IO的上下拉、速度、初始电平等。
右侧选择System view,可以看到状态都是对钩,则没有什么大的遗漏。

三、Clock Configuration

点击上方的Clock Configuration,进到如下界面:

这里目的是配下时钟树,不同系列有所差异,我这里是STM32F103RC:

四、Project Manager

这里主要是配置下生成工程的名称、路径等等。

这里要多勾选一下,每一个外设,都会有单独的.c和.h文件。比如gpio.c/gpio.h、can.c/can.h。勾选完,点击右上方的GENERATE CODE:

等待一会,程序生成完会弹出对话框。按照自己的习惯去打开工程就可以了。

五、查看工程

查看GPIO的初始化函数,这里对应设置时选择的电平。比如LED低电平亮,那就可以配置成高电平。初始化完成以后,LED是灭的状态。

生成的工程,main函数主循环是空的:


根据需求添加程序就可以了,这里只是单纯的闪灯:

HAL_Delay(300);
HAL_GPIO_WritePin(LED_polo6_GPIO_Port,LED_polo6_Pin,GPIO_PIN_RESET);
HAL_Delay(300);
HAL_GPIO_WritePin(LED_polo6_GPIO_Port,LED_polo6_Pin,GPIO_PIN_SET);

stm32cubemx学习教程之硬件i2c读取光照度(代码片段)

...测光照度数据。程序下载路径:demo程序。一.使用STM32CubeMX创建一个新工程1.如下图创建一个新工程:2.如下图选择自己现有的STM32开发板进行开发:3.配置时钟 查看详情

stm32cubemx之freertos(代码片段)

文章目录1STM32CubeMX参数配置及其说明1.1FreeRTOSMode1.2Configparameters1.2.1Kernelsetting1.2.2Memorymanagementsetting1.2.3Hookfunctionrelateddefinitions1.3创建任务Task和队列Queue1.3.1创建任务Task1.3.2创建队列Queue1.4FreeRTOSHeap 查看详情

stm32cubemx使用之通用定时器和系统定时器(代码片段)

...。遇到的定时器相关问题,也陆续记录在本文末尾。CubeMX芯片:STM32G0B1RCT6实际焊接STM32G0B1RET6二、Pinout& 查看详情

stm32cubemx使用之rtc及制作时间戳(代码片段)

目录一、概述二、Pinout&Configuration三、ClockConfiguration四、测试RTC4.1获取时间4.2制作时间戳4.2.1生成时间戳4.2.2验证时间戳4.2.3时间戳时间无变化一、概述本文记录下RTC的使用过程,主要是后续使用,能有个参考。主要是... 查看详情

stm32cubemx使用之dma方式使用adcadc使用遇到的问题(代码片段)

目录一、概述二、Pinout&Configuration2.1选择端口2.2开启DMA中断三、测试ADC四、遇到的问题4.1采集到其他通道的值继续4.1的问题4.2STM32ADC没有输入电压时,采集结果不为0一、概述本文记录下ADC的使用过程,主要是后续使用&#... 查看详情

使用stm32cubemx生成stm32工程(代码片段)

使用STM32CubeMX生成STM32工程引言介绍使用流程引言随着技术发展的越来越成熟,单片机开发已经出现越来越多好用的开发软件了。STM32CubeMX是一种图形工具,通过分步过程可以非常轻松地配置STM32微控制器和微处理生成相应... 查看详情

stm32g070rbt6基于stm32cubemx创建串口中断接收数据(代码片段)

STM32G070RBT6基于STM32CubeMX创建串口中断接收数据📌相关篇《利用STM32CubeMX快速创建点灯带调试输出工程案例》📍《【硬件开源电路】STM32G070RBT6开发板》✨这里只演示串口接收中断。不包含配置串口发送以及重映射printf函数... 查看详情

stm32+lwip:使用stm32cubemx生成项目(代码片段)

系列文章:stm32+lwip(一):使用STM32CubeMX生成项目stm32+lwip(二):UDP测试stm32+lwip(三):TCP测试stm32+lwip(四):网页服务器测试stm32+lwip(五):以太网帧发送测试 STM32CubeMX是一个图形化的配置工具,根据用户配置可以生成相应的代码,可以帮助... 查看详情

stm32cubemx之串口配置

STM32CubeMX之串口配置  串口通信是一种设备间非常常用的​​串行通信​​方式,以比特位的形式发送或接收数据,电子工程师经常使用这种方式来调试数据。本章节我们将学习串口发送和接收数据。STM32F103C8开发板通过串口... 查看详情

stm32cubemx之fatfs+spi驱动w25qxx(代码片段)

文章目录1W25Q128简介2STM32CubeMX配置SPI2.1配置SPI2.2配置CS片选引脚3添加W25Q128驱动4将W25Q128挂载到FATFS4.1STM32CubeMX配置FATFS4.2在工程中为FATFS适配W25Q1284.2.1DSTATUSUSER_initialize(BYTEpdrv)4.2.2DSTATUSUSER_status(BYTEpdrv)4.2.3USE 查看详情

stm32cubemx第八篇之dma(代码片段)

...的HAL库的版本为:STM32Cube_FW_F4_V1.25.0本实验使用的STM32CubeMX版本为:6.1.1该 查看详情

stm32cubemx使用之rtc及制作时间戳(代码片段)

...以应用非常简单。用到其他功能,再补充此篇文章。CubeMX芯片:STM32G0B1RCT6实际焊接STM32G0B1RET6二、Pinout&Configuration三、ClockConfiguration四、测试RTCRTC_DateTypeDefGetData;//获取日期结构体RTC_TimeTypeDefGetTime;//获取时间结构体while(1... 查看详情

stm32cubemx基于hal库实现简单串口通信(代码片段)

STM32CubeMX基于HAL库实现简单串口通信板子:STM32F103C8编译工具:Keil+STM32CubeMX烧录工具:FlyMcu串口调试程序:XCOM实验要求:1)设置波特率为115200,1位停止位,无校验位;2)STM32系统给上位... 查看详情

使用stm32cubemx创建freertos项目(代码片段)

使用STM32CubeMX创建FreeRTOS项目介绍STM32CubeMXFreeRTOS使用流程后续介绍STM32CubeMXSTM32CubeMX是被广泛使用的。它集成了芯片选型、引脚分配和功能配置,中间件配置,时钟配置,初始代码和项目的功能。FreeRTOSFreeRTOS是与世界... 查看详情

使用stm32cubemx创建freertos项目(代码片段)

使用STM32CubeMX创建FreeRTOS项目介绍STM32CubeMXFreeRTOS使用流程后续介绍STM32CubeMXSTM32CubeMX是被广泛使用的。它集成了芯片选型、引脚分配和功能配置,中间件配置,时钟配置,初始代码和项目的功能。FreeRTOSFreeRTOS是与世界... 查看详情

stm32cubemx(06)stm32控制不同的开关,实现电子琴功能。(代码片段)

...录前言一、实验内容二、电路连线三、发音原理四、STM32cubeMX配置4.1配置GPIO4.2配置定时器五、软件部分总结前言好久都没有写cube相关的内容了,今天来学习用STM32控制不同的开关,实现电子琴功能。硬件:STM32ZET6软件... 查看详情

stm32学习笔记二基于stm32f103c8t6和stm32cubemx实现uart串口通信数据收发(代码片段)

系列文章目录一、基于STM32F103C8T6最小系统板和STM32CubeMX实现LED灯循环闪烁二、基于STM32F103C8T6和STM32CubeMX实现UART串口通信数据收发三、实战小例程基于STM32F103C8T6最小系统板和STM32CubeMX驱动WS2812B光立方四、基于STM32F103C8T6最小系统板... 查看详情

stm32学习笔记二基于stm32f103c8t6和stm32cubemx实现uart串口通信数据收发(代码片段)

系列文章目录一、基于STM32F103C8T6最小系统板和STM32CubeMX实现LED灯循环闪烁二、基于STM32F103C8T6和STM32CubeMX实现UART串口通信数据收发三、实战小例程基于STM32F103C8T6最小系统板和STM32CubeMX驱动WS2812B光立方四、基于STM32F103C8T6最小系统板... 查看详情