STM32cubeMX的初始化以及初步调试


一、安装STM32cubeMX

1.1 安装JRE

由于 STM32CubeMX 软件是基于 JAVA 环境运行的,所以需要安装 JRE (Java Runtime Environment)才能使用。
安装链接如下:JRE
根据提示安装即可,注意安装的位数为64位。

1.2 安装STM32cubeMX

官网链接如下:cubeMX

同样地,根据安装提示,一步步操作就可以正确安装啦。

1.3 安装相应的hal库

安装STM32cubeMX后,打开,点击上方的Help -> Manage embedded software packages
在这里插入图片描述
选择芯片型号和版本号后,点击istall now 即可。
在这里插入图片描述

二、初始化cubeMX

在正确安装cubeMX后,我们需要先配置一些选项,操作如下。

2.1.创建工程

在这里插入图片描述

2.2.选择芯片型号

具体型号为STM32F103C8,然后点击start project
在这里插入图片描述

2.3.选择调试方式

点击system core
进入SYS,在debug下选择serial wire:
在这里插入图片描述

2.4.配置时钟

点击Clock Configuartion,勾选PLLCLK
在这里插入图片描述
.将hse那里设为Crystal/Ceramic Resonator:
在这里插入图片描述

2.5 添加引脚

我们要添加的引脚为A4,B9,C15
.选择GPIO选项,点击芯片选择合适引脚
在这里插入图片描述
选择模式为端口输出
在这里插入图片描述

2.6命名项目

选择路径和IDE
在这里插入图片描述

2.7选择初始文件

进入 code generate界面,选择生成初始化.c/.h文件,后面点击generate code,选择open project
在这里插入图片描述

三、在keil上的仿真

3.1 打开项目

根据我们创作的目录,找到并打开工程文件
在这里插入图片描述

3.2 添加代码

找到对应路径的main文件,在主函数先添加如下代码
在这里插入图片描述
图中代码如下

SystemClock_Config();//系统时钟初始化
MX_GPIO_Init();//gpio初始化
while (1)
{
HAL_GPIO_WritePin(GPIOA,GPIO_PIN_4,GPIO_PIN_RESET);//PA4亮灯
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_9,GPIO_PIN_SET);//PB9熄灯
HAL_GPIO_WritePin(GPIOC,GPIO_PIN_15,GPIO_PIN_SET);//PC15熄灯
HAL_Delay(1000);//延时1s
HAL_GPIO_WritePin(GPIOA,GPIO_PIN_4,GPIO_PIN_SET);//PA4熄灯
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_9,GPIO_PIN_RESET);//PB9亮灯
HAL_GPIO_WritePin(GPIOC,GPIO_PIN_15,GPIO_PIN_SET);//PC15熄灯
HAL_Delay(1000);//延时1s
HAL_GPIO_WritePin(GPIOA,GPIO_PIN_4,GPIO_PIN_SET);//PA4熄灯
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_9,GPIO_PIN_SET);//PB9熄灯
HAL_GPIO_WritePin(GPIOC,GPIO_PIN_15,GPIO_PIN_RESET);//PC15亮灯
HAL_Delay(1000);//延时1s
}

3.3观察输出波形

在这里插入图片描述
选择芯片和虚拟调试
在这里插入图片描述
选择晶振大小
在这里插入图片描述
编译
在这里插入图片描述
调试
在这里插入图片描述
选择逻辑分析仪
在这里插入图片描述
选择引脚(如果出现UNKONWN SIGNAL,那么可能在debug处存在错误),
在这里插入图片描述
配置界面选项,点击in和out调制grind大小,使之达到1s.
在这里插入图片描述
运行,点击箭头所示,运行程序,得到下图
在这里插入图片描述

四、烧录到芯片

4.1 实验器材

usb转ttl接口(CH340)
在这里插入图片描述
STM32最小开发板
在这里插入图片描述
杜邦线
在这里插入图片描述

4.2软件部分

生成hex文件
在这里插入图片描述
选择正确的路径
在这里插入图片描述
烧录前,需要先了解stm32的三种启动模式
BOOT1=x BOOT0=0 从用户闪存启动,这是正常的工作模式。
BOOT1=0 BOOT0=1 从系统存储器启动,这种模式启动的程序功能由厂家设置。
BOOT1=1 BOOT0=1 从内置SRAM启动,这种模式可以用于调试。
所以烧录的时候,BOOT0需要置一,烧录完后如果想打开串口助手查看程序运行需要把BOOT0置零,回归正常工作状态

4.3结果展示

流水灯

总结

``
1.cubeMX的初始化选项较多需注意
2.调制代码是,要设置debug选项
3.在选择要观察的引脚时,可以简写输入为PORTX.N,(X表示A…E,N表示0…15)

参考链接

1.https://blog.csdn.net/qq_55691662/article/details/120923869
2.https://blog.csdn.net/qq_55691662/article/details/120923869
3.https://blog.csdn.net/weixin_46129506/article/details/120780184
4.https://blog.csdn.net/weixin_45770271/article/details/105326923

  • 20
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值