01 HAL库点亮LED灯

引言:本专题采取的开发平台是stm32cubeIDE, 文章后面会后提供

一 、 LED简介


  

          LED(Light Emitting Diode)是一种半导体发光器件,能够将电能直接转化为光能的电子元件。它具有体积小、功耗低、寿命长等特点,广泛应用于照明、显示、指示和通信等领域。 LED的工作原理是基于电子的注入和复合过程。LED由两个半导体材料(P型和N型)组成,它们通过一个PN结电路连接在一起。当正向电流作用于PN结时,从P区域注入到N区域的电子与从N区域注入到P区域的空穴进行复合,这个过程会产生光能并发出可见光。

LED的优点有:

1. 节能高效:相比传统的光源,LED的能量转换效率较高,能够将电能转化为光能,减少能量的浪费。

2. 寿命长:LED具有较长的使用寿命,一般可达数万小时,远远超过传统的白炽灯泡和荧光灯。

3. 易于控制:LED具备响应速度快、亮度可调、可进行数字控制等特点,便于实现灯光的各种效果和调节。

4. 小型化:LED体积小巧、轻便,适用于各种场景和产品的设计。 LED广泛应用于室内照明、户外照明、汽车照明、电子显示屏、指示灯、装饰照明等领域。近年来,LED技术不断创新,出现了各种颜色、大小和形状的LED产品,为人们带来更多的创新应用和便利。

二、 实验步骤


01 查看硬件原理图

02 配置GOIO为相应的工作模式

03 编写外设的驱动函数

04 查看实验现象、调试程序

01 .LED的原理图

可以发现, 给网络标号为LED1的引脚高电平, 对应的led灯就会被点亮

02 配置GOIO为相应的工作模式

点击右上角的file, 新建stm32工程。

因为我这里使用的芯片是由两个内核, 需要先配置外设分配给哪一个内核控制, 你们按照自己做实验的平台选择配置gpio的模式为输出模式就可以

接着勾选上cubemx在生成配置代码时帮我们生成对应的.c和.h文件。

03 编写外设的驱动函数

void led_on(void)
{
	HAL_GPIO_WritePin(GPIOE,GPIO_PIN_8,GPIO_PIN_SET);
	HAL_GPIO_WritePin(GPIOE,GPIO_PIN_10,GPIO_PIN_SET);
	HAL_GPIO_WritePin(GPIOF,GPIO_PIN_10,GPIO_PIN_SET);
}
void led_off(void)
{
	HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_RESET);
	HAL_GPIO_WritePin(LED2_GPIO_Port, LED2_Pin, GPIO_PIN_RESET);
	HAL_GPIO_WritePin(LED3_GPIO_Port, LED3_Pin, GPIO_PIN_RESET);

}

这里使用的是hal的函数, 这里我就不将头文件拿过来了, 大家可以自己设计自己的头文件, 在里面设计自己的函数,宏定义啥的。

最后根据自己的板子选着合适的下载程序的方式。

资料提供:

链接:https://pan.baidu.com/s/1WfDXoHmvgLQEpHfbQx0zBg 
提取码:1234 

  • 19
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@daiwei

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值