STM32学习笔记 一、基于STM32F103C8T6最小系统板和STM32CubeMX实现板载LED灯循环闪烁

系列文章目录

一、基于STM32F103C8T6最小系统板和STM32CubeMX实现LED灯循环闪烁
二、基于STM32F103C8T6和STM32CubeMX实现UART串口通信数据收发
三、实战小例程 基于STM32F103C8T6最小系统板和STM32CubeMX驱动WS2812B光立方
四、基于STM32F103C8T6最小系统板HAL库CubeMX驱动HC-SR501红外人体传感模块
五、基于STM32F103C8T6(HAL库)的HC-SR501红外人体传感及HC-SR04超声波测距



一、配置CubeMX

1.1 新建工程

工程选择STM32F103C8Tx芯片
在这里插入图片描述

1.2 时钟配置

打开RCC时钟外部输入,读原理图发现外部时钟有8MHz和32768Hz,外部8MHZ可以使得时钟达到最高的72MHz,没有外部8MHZ内部时钟最高能调到64MHz。没有外部32768Hz,内部的RTC模块工作不正常,这里我们只开启外部高速时钟源,即配置板载8M晶振作为时钟输入。
在这里插入图片描述

1.3 Debug配置

设置debug方式,STM32F103C8T6最小系统板只支持Serial wire的方式,也就是两根线:SWDIO、SWCLK,故设置为Serial wire。此时仿真器与MCU之间用SWD协议通信,即SWD(serial wire debug)。
在这里插入图片描述

1.4 GPIO配置

在这里插入图片描述

看原理图,可知板子上的LED灯对应芯片P13管脚,故配置PC13端口为输出。
在这里插入图片描述

1.5 时钟树配置

这里直接把时钟开到最高72MHz
在这里插入图片描述

1.6 项目设置

在这里插入图片描述
这里勾选上.c/.h文件分开生成。
在这里插入图片描述
这样cubeMX的配置就完毕了,打开生成的工程文件。

二、Keil配置

2.1 写逻辑代码

在主函数的while里写

		HAL_GPIO_TogglePin(GPIOC,GPIO_PIN_13);//状态翻转
		HAL_Delay(500);//调用HAL库延时函数,延时500ms

2.2 设置debug

这里我使用的是DAP-Link,根据自己的仿真器选择对应的即可。
在这里插入图片描述

之后在Utilities中点击Setting,勾选Reset and run,这样每次重烧代码就不必手动按复位了。
在这里插入图片描述

三、现象

之后绿色LED灯就会以1s周期循环闪烁了
在这里插入图片描述

版权声明:本文为CSDN博主「遗忘丶」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/h568630659/article/details/121404155

系列文章目录

一、基于STM32F103C8T6最小系统板和STM32CubeMX实现LED灯循环闪烁
二、基于STM32F103C8T6和STM32CubeMX实现UART串口通信数据收发
三、实战小例程 基于STM32F103C8T6最小系统板和STM32CubeMX驱动WS2812B光立方
四、基于STM32F103C8T6最小系统板HAL库CubeMX驱动HC-SR501红外人体传感模块
五、基于STM32F103C8T6(HAL库)的HC-SR501红外人体传感及HC-SR04超声波测距



一、配置CubeMX

1.1 新建工程

工程选择STM32F103C8Tx芯片
在这里插入图片描述

1.2 时钟配置

打开RCC时钟外部输入,读原理图发现外部时钟有8MHz和32768Hz,外部8MHZ可以使得时钟达到最高的72MHz,没有外部8MHZ内部时钟最高能调到64MHz。没有外部32768Hz,内部的RTC模块工作不正常,这里我们只开启外部高速时钟源,即配置板载8M晶振作为时钟输入。
在这里插入图片描述

1.3 Debug配置

设置debug方式,STM32F103C8T6最小系统板只支持Serial wire的方式,也就是两根线:SWDIO、SWCLK,故设置为Serial wire。此时仿真器与MCU之间用SWD协议通信,即SWD(serial wire debug)。
在这里插入图片描述

1.4 GPIO配置

在这里插入图片描述

看原理图,可知板子上的LED灯对应芯片P13管脚,故配置PC13端口为输出。
在这里插入图片描述

1.5 时钟树配置

这里直接把时钟开到最高72MHz
在这里插入图片描述

1.6 项目设置

在这里插入图片描述
这里勾选上.c/.h文件分开生成。
在这里插入图片描述
这样cubeMX的配置就完毕了,打开生成的工程文件。

二、Keil配置

2.1 写逻辑代码

在主函数的while里写

		HAL_GPIO_TogglePin(GPIOC,GPIO_PIN_13);//状态翻转
		HAL_Delay(500);//调用HAL库延时函数,延时500ms

2.2 设置debug

这里我使用的是DAP-Link,根据自己的仿真器选择对应的即可。
在这里插入图片描述

之后在Utilities中点击Setting,勾选Reset and run,这样每次重烧代码就不必手动按复位了。
在这里插入图片描述

三、现象

之后绿色LED灯就会以1s周期循环闪烁了
在这里插入图片描述

版权声明:本文为CSDN博主「遗忘丶」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/h568630659/article/details/121404155

生成海报
点赞 0

遗忘丶

我还没有学会写个人说明!

暂无评论

相关推荐

在Stm32CubeIDE环境下使用DAP-Link仿真

目录 一、文章背景 二、准备工作 三、调试过程 四、编写脚本自动执行OpenOCD服务 一、文章背景 最近师弟需要调STM32,由于他已经习惯了Eclipse的开发环境,所以给他推荐了Stm32CubeIDE