搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序

搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序

前言

本文主要是STM32CubeMX的安装、使用以及配合Keil5重新写跑马灯程序实验

一、搭建STM32的开发环境

1.安装jdk

由于STM32CubeMX是Java实现的,需要安装jdk环境。
jdk官网下载链接:https://www.oracle.com/java/technologies/javase-downloads.html
现在大多数都是Java16

2.安装STM32CubeMX

下载地址:https://www.st.com/zh/development-tools/stm32cubemx.html
需要注册,注册起来有少许麻烦。注意三个下载文件后面的操作系统,选择win的那一个

3.安装过程

1.安装程序

以管理员身份运行并安装 SetupSTM32CubeMX-6.3.0-Win.exe ,进入下面这个界面后,点击Next搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序
点击"I accept the terms of this license agreement",接着选择Next
搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序
点击第一个就行了,第二个有点类似于现在手机的“用户改进计划”,不用点也行
搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序
安装到你想要的位置,默认是C盘,但是笔者建议大多数时候别装C盘里面,最简单的解决方法就是把最开始的C改成D。
搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序
点击确认
搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序
Next就行了
搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序
然后就是等待安装了
搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序
安装完成Next
搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序
然后,点击Done完成安装

2.安装固件库

运行CubeMX ,选择 Help->Magne… 安装固件库
搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序
安装固件库
下面第一个按钮是从本地安装(已经在本地下载了对应的固件库),Install now是通过网络下载。我看的资料说网上下载很慢,但是我下载的时候还是挺快的应该和网络环境有很大关系
搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序
下载完毕
搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序

二、利用工具实现LED的点亮

1.分析相应的原理图

搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序
此原理图是我使用核心板的LED的电路。以LED1为例,要实现该灯被点亮,需要将PC0输入低电平,从而,电路接通。

2.使用CubeMX生成相关代码

选择New Project,然后选择芯片类型
搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序
搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序

配置系统调试接口sys,选择Serial Wire
搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序

配置时钟
选择RCC,将High Speed Clock 设置为 Crystal/Ceramic Resonator
搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序

选择Clock Configuration更改电路
搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序

3.GPI0设置

选择GPIO,一次将B0、C15、A0设置为GPIO_Output。
并将三个引脚的输出默认改为High(改完之后会出现三个√)
搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序

在project Manager下的Project中设置工程名称和工程路径,并且选择编译软件,由于我们使用Kei5,选择MDK-ARM
搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序

会有提示,选择open project 选择Keil5打开
打开Application/User/Core中的main文件(下面那一个文件)
搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序
找到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灭


搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序

编译运行
搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序

三、运行效果图

搭建STM32开发环境——STM32CubeMX并配合Keil5重写跑马灯程序

上一篇:ROS节点理解--5


下一篇:ROS学习(六)—— 理解ROS节点