stm32点亮led灯用到的模块

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了stm32点亮led灯用到的模块相关的知识,希望对你有一定的参考价值。

参考技术A

,模块如下:

    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--);

以上是关于stm32点亮led灯用到的模块的主要内容,如果未能解决你的问题,请参考以下文章

LED灯循环点亮(单灯低电平点亮)程序是啥?

在一个 STM32 点亮 LED 的程序中,部分代码如下?

STM32固件库点亮LED灯

史上最全的LED点灯程序—使用STM32FPGALinux点亮你的LED灯

史上最全的LED点灯程序—使用STM32FPGALinux点亮你的LED灯

STM32怎么实现单片机控制LED灯常亮10S后熄灭?