搭建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
点击"I accept the terms of this license agreement",接着选择Next
点击第一个就行了,第二个有点类似于现在手机的“用户改进计划”,不用点也行
安装到你想要的位置,默认是C盘,但是笔者建议大多数时候别装C盘里面,最简单的解决方法就是把最开始的C改成D。
点击确认
Next就行了
然后就是等待安装了
安装完成Next
然后,点击Done完成安装
2.安装固件库
运行CubeMX ,选择 Help->Magne… 安装固件库
安装固件库
下面第一个按钮是从本地安装(已经在本地下载了对应的固件库),Install now是通过网络下载。我看的资料说网上下载很慢,但是我下载的时候还是挺快的应该和网络环境有很大关系
下载完毕
二、利用工具实现LED的点亮
1.分析相应的原理图
此原理图是我使用核心板的LED的电路。以LED1为例,要实现该灯被点亮,需要将PC0输入低电平,从而,电路接通。
2.使用CubeMX生成相关代码
选择New Project,然后选择芯片类型
配置系统调试接口sys,选择Serial Wire
配置时钟
选择RCC,将High Speed Clock 设置为 Crystal/Ceramic Resonator
选择Clock Configuration更改电路
3.GPI0设置
选择GPIO,一次将B0、C15、A0设置为GPIO_Output。
并将三个引脚的输出默认改为High(改完之后会出现三个√)
在project Manager下的Project中设置工程名称和工程路径,并且选择编译软件,由于我们使用Kei5,选择MDK-ARM
会有提示,选择open project 选择Keil5打开
打开Application/User/Core中的main文件(下面那一个文件)
找到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灭
编译运行