stm32点亮一个led灯实验步骤(使用stm32实现两个led灯点亮)
怎样用单片机stm32点亮一个led
下载零死角玩转stm32看看吧,用stm32点亮led看似简单,实际要涉及到很多东西,从建立模板,调用库函数,配置gpio,打开gpio时钟,初始化gpio……。当你能点亮led时你也入门了。
stm32点亮led灯用到的模块
,模块如下:
1
把工程项目模板重新复制一份,改名为“点亮一个LED灯”
在USR文件夹下创建led文件夹
led文件夹下面新建以下两个文件
bsp_led.c
bsp_led.h
2
然后我们用keil打开这个工程项目
点击如下图圈上的图标
3
新建一个led文件夹
然后我们把刚新建的文件导入到led文件夹
4
在bsp_led.h文件里
#ifndef __BSP_LED_H__
#define __BSP_LED_H__
#include "stm32f10x.h"
#define LED1_GPIO_CLK RCC_APB2Periph_GPIOB
#define LED1_GPIO_PORT GPIOB
#define LED1_GPIO_PIN GPIO_Pin_5
void LED_GPIO_Config(void);
#endif
5
在bsp_led.c文件里
#include "./led/bsp_led.h"
void LED_GPIO_Config(void)
{
GPIO_InitTypeDef GPIO_InitStruct;
//打开外设时钟
RCC_APB2PeriphClockCmd(LED1_GPIO_CLK,ENABLE);
//配置初始化结构体
GPIO_InitStruct.GPIO_Pin = LED1_GPIO_PIN;
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_10MHz;
//调用外设初始化函数,把配置好的结构体成员写到寄存器里面
GPIO_Init(LED1_GPIO_PORT,GPIO_InitStruct);
}
6
在main.c文件里
#include "./led/bsp_led.h"
void delay(uint32_t count);
int main(void)
{
LED_GPIO_Config();
while(1)
{
GPIO_SetBits(LED1_GPIO_PORT,LED1_GPIO_PIN);
delay(0xfffff);
GPIO_ResetBits(LED1_GPIO_PORT,LED1_GPIO_PIN);
delay(0xfffff);
}
}
void delay(uint32_t count)
{
for (;count!=0;count--);
}
[img]stm32怎么外接led灯
stm32可以直接点亮单颗LED草帽灯,或者1206封装及以下的灯。如果想要驱动更大工作电流的,需要加一级三极管驱动,做开关管使。
stm32点亮一个led灯实验步骤的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于使用stm32实现两个led灯点亮、stm32点亮一个led灯实验步骤的信息别忘了在本站进行查找喔。微信号:ymsc_2016
相关文章
发表评论
评论列表
- 这篇文章还没有收到评论,赶紧来抢沙发吧~