用stm32固件库点亮LED—红、蓝、绿灯

用stm32固件库点亮LED—红、蓝、绿灯

一、前言:
本人用的是stm32f1系列,火哥的指南针开发板,在这强力推荐火哥stm32的教学视频和开发板(不喜勿喷),对于初学者来说很容易上手,教学视频简直是保姆级别…赞赞赞!
二、正文:
这是LED的硬件电路,绿灯为PB0,红灯为PB5,蓝灯为PB1。这些LED灯的阴极都是连接到STM32的GPIO引脚,只要我们控制GPIO引脚的电平输出状态,即可控制LED灯的亮灭。
在这里插入图片描述
—————————————————————————————————
1.主函数 main.c

#include "stm32f10x.h"   // 相当于51单片机中的  #include <reg51.h>
#include "bsp_led.h"   
### STM32 BSP库概述 STM32的BSP(Board Support Package)库主要用于支持特定硬件板卡的功能实现,简化开发者对于底层硬件的操作难度。通过使用BSP库可以更方便快捷地调用外设功能而无需深入了解其寄存器配置细节[^1]。 ### 获取与安装 为了获取适用于目标开发板的BSP库,通常可以从官方渠道下载对应的固件包,在解压后的目录下找到`Drivers/BSP/`路径下的相应文件夹。此外也可以访问ST官方网站查询具体型号的支持资源并按照指引完成安装过程。 ### 配置环境 当获得所需的BSP源码之后,需将其加入到项目工程之中。这一步骤可能涉及到复制必要的头文件(.h)以及C语言源程序(.c),并将它们放置于合适的位置以便编译链接工具能够识别这些新增加的内容。同时还需要确保IDE中的包含路径设置正确无误以保证预处理器能找到所有的依赖项。 ### 示例代码展示 下面给出一段简单的LED控制例子来演示如何利用BSP函数操作GPIO端口: ```c #include "stm32f4xx_hal.h" #include "bsp_led.h" int main(void){ HAL_Init(); SystemClock_Config(); // 初始化系统时钟 LED_Init(LED_GREEN); // 调用BSP初始化绿色LED while (1){ LED_On(LED_GREEN); HAL_Delay(500); LED_Off(LED_GREEN); HAL_Delay(500); } } ``` 此段代码展示了基本的应用场景——即周期性地点亮和熄灭一块电路板上的绿灯。这里使用的`LED_Init()`、`LED_On()` 和 `LED_Off()` 函数均来自BSP层封装好的接口,极大地方便了用户的编程工作量。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值