点亮板载led

来源:互联网 发布:js父元素 编辑:程序博客网 时间:2024/06/02 09:01

 

硬件连接图

连接GPIOD12~GPIOD15

 

首先建立两个头文件 led.c  和led.h

Led.c 主要用来写led功能函数

Led.h 主要用来声明led.c里面外部要引用的函数名。

 

#include "led.h"

/***********************************************************************************************************

* Function name    :  void LED_Init()  

* Descriptions     :  --led GPIO初始化

* input parameters :  none          

* output parameters:  none

* Returned value   :  none

* author           :  2013/11/10, by KingSong    

************************************************************************************************************/

void LED_Init(void)

{

    GPIO_InitTypeDef GPIO_InitStructure;

    RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOD, ENABLE);

    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12 | GPIO_Pin_13 | GPIO_Pin_14|GPIO_Pin_15;

    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;

    GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;

    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;

    GPIO_Init(GPIOD, &GPIO_InitStructure);

 

}

 

void LEDOn(Led_Def Led)//LED亮

{

    LED_PORT[Led]->BSRRL=LED_PIN[Led];

}

 

void LEDOff(Led_Def Led)//LED灭

{

    LED_PORT[Led]->BSRRH=LED_PIN[Led]; 

}

 

void LEDTog(Led_Def Led)//LED状态翻转

{

    LED_PORT[Led]->ODR^=LED_PIN[Led];

}

 

 

主函数

#include<my_config.h>

    void main ()

    {

     LEDOn(LED2);

     LEDOn(LED1);

     LEDOn(LED3);

     LEDOn(LED4);

    

          while(1)

      {

      }

my_config.h  个人配置头文件

 

 

原创粉丝点击