使用STM32CubeMX实现流水灯



一、安装STM32CubeMX

安装JDK: JDK下载

下载STM32CubeMX: STM32CubeMX下载


1. 下载并安装

点击Get Software:
在这里插入图片描述

根据自己的操作系统选择:
在这里插入图片描述

一步步Next,输入邮箱点击下载后,可在邮件中下载:
在这里插入图片描述

双击安装包后,Next:
在这里插入图片描述


Next:
在这里插入图片描述


勾选第一个,Next
在这里插入图片描述


选择安装路径(不能有中文),NextYes
在这里插入图片描述
在这里插入图片描述


直接Next
在这里插入图片描述


Next:
在这里插入图片描述


Done
在这里插入图片描述


2. 安装固态库

打开STM32CubeMX,选择Help下的Manager embedded software packages:
在这里插入图片描述


选择对应的芯片(此处为F1),Install Now:

1.8.4版本有问题,点灯时灯闪一下就不亮了,建议下载其他版本

在这里插入图片描述



二、流水灯实现

上一篇同样使用B0C15A0三个引脚。


选择File下的New Project,即新建项目:
在这里插入图片描述


选择自己的芯片类型(本文为stm32f103c8t6),选择下边的item,然后Start Project
在这里插入图片描述


选择System Core下的SYS,将Debug设置为Serial Wire:
在这里插入图片描述


  • 配置时钟

RCC下的HSE设置为Crystal/Ceramic Resonator
在这里插入图片描述


选择Clock Configuration,如下:
在这里插入图片描述


选择PLLCLK
在这里插入图片描述


  • GPIO设置

选择GPIO,依次将B0C15A0设置为GPIO_Output在这里插入图片描述


将三个引脚的输出默认改为High,即高电平:
在这里插入图片描述


  • 项目配置

Project Manager下的Project中设置工程名称和工程路径,并选择编译软件:
在这里插入图片描述


取消勾选Use lastest available version,选择其他版本:
在这里插入图片描述


Code Generate中选择第一个,然后Generate Code,即生成代码:


打开项目中的main.c文件:
在这里插入图片描述


while循环中写入以下代码:

	HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0, GPIO_PIN_RESET);  // 灯1亮
	HAL_Delay(1000); // 延时1s
	HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0, GPIO_PIN_SET);  // 灯1灭
	  
	HAL_GPIO_WritePin(GPIOC, GPIO_PIN_15, GPIO_PIN_RESET);  // 灯2亮
	HAL_Delay(1000); // 延时1s
	HAL_GPIO_WritePin(GPIOC, GPIO_PIN_15, GPIO_PIN_SET);  // 灯2灭
	  
	HAL_GPIO_WritePin(GPIOA, GPIO_PIN_0, GPIO_PIN_RESET);  // 灯3亮
	HAL_Delay(1000); // 延时1s
	HAL_GPIO_WritePin(GPIOA, GPIO_PIN_0, GPIO_PIN_SET);  // 灯3灭

在这里插入图片描述


运行成功:


三、总结

STM32CubeMX操作方便,但还是需要多加练习。

猜你喜欢

转载自blog.csdn.net/weixin_46628481/article/details/120817280