STM32第三节——点亮第一个LED灯

1 STM32CubeMX新建工程

如果是第一次打开STM32CubeMX,软件会自动下载一些组件,等待下载完成即可。

1.2 点击ACCESS TO MCU SELECTOR 选择CPU型号,我用的是STM32F103ZET6,选择

STM32F103ZETx,可以点击旁边的收藏图标,下次就可以快速找到了。

进入工程后打开 RCC 选项,选择 Crystal/Ceramic Resonator,即使用外部晶振作为 HSE 的

时钟源。

接下来配置IO口,本次工程功能为点亮LED灯,所以只用配置一个IO口就行了,至于你的灯在那个

IO口就需要查看对应的原理图了,如

现在我要让我的绿灯亮把PB5配置能GPIO_output下面也可以搜索引脚

然后是配置时钟,开发板的外部晶振为 8MHz,我们填入 8;通道选择 LSE;PLLM 选择为/1;倍

频系数 N 选择为 x9; 系统时钟选择 PLLCLK;系统时钟设定为 72Mz;APB1 分频系数选择为/2

即 PCLK1 位 36MHz; APB2 分频系数选择为/1 即 PCLK2 位 72MHz。我其实就是把HCLK改成

最大72其他的也就自动改了。

然后是详细配置,点击 Configuration,进入系统详细配置,选择 GPIO,配置 PB5 的默认电平,

开漏输出,无上下 拉,低速模式。引脚标签为 LED_R。

为了防止出现,烧录以后仿真器无法连接的情况,我们在 Pinout 里将 SYS 里面的 Debug 设置成

Serial Wire, 这样问题得到解决。

接着选择 Project Manager 选项,配置工程的名称,路径,使用的 IDE 工具,堆栈大小。注意不要

使用中文路径和工程名称。配置完后点击GENERATE CODE。

2 添加用户代码使LED灯周期点亮

复制代码
//每执行一次翻转一次LED灯的状态
HAL_GPIO_TogglePin(LED_R_GPIO_Port,LED_R_Pin);
//延时一秒
HAL_Delay(1000);

最后配置下载器,把程序烧近开发板就可以了。

相关推荐
悠哉悠哉愿意1 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
Lester_11011 天前
STM32霍尔传感器输入口设置为复用功能输入口时,还能用GPIO函数直接读取IO的状态吗
stm32·单片机·嵌入式硬件·电机控制
LCG元1 天前
低功耗显示方案:STM32L0驱动OLED,动态波形绘制与优化
stm32·嵌入式硬件·信息可视化
三佛科技-187366133971 天前
120W小体积碳化硅电源方案(LP8841SC极简方案12V10A/24V5A输出)
单片机·嵌入式硬件
z20348315201 天前
STM32F103系列单片机定时器介绍(二)
stm32·单片机·嵌入式硬件
古译汉书1 天前
【IoT死磕系列】Day 7:只传8字节怎么控机械臂?学习工业控制 CANopen 的“对象字典”(附企业级源码)
数据结构·stm32·物联网·http
Alaso_shuang2 天前
STM32 核心输入、输出模式
stm32·单片机·嵌入式硬件
脚后跟2 天前
AI助力嵌入式物联网项目全栈开发
嵌入式硬件·物联网·ai编程
2501_918126912 天前
stm32死锁是怎么实现的
stm32·单片机·嵌入式硬件·学习·个人开发
z20348315202 天前
STM32F103系列单片机定时器介绍(一)
stm32·单片机