zoukankan      html  css  js  c++  java
  • HAL库实现LED灯闪烁

    led.h

    #ifndef _LED_H
    #define _LED_H
    
    #include "stm32f4xx.h"
    #include "delay.h"
    
    //RED
    #define LED_RED_GPIO_PORT    GPIOB
    #define LED_RED_PIN          GPIO_PIN_1
    
    //GREEN
    #define LED_GREEN_GPIO_PORT  GPIOB
    #define LED_GREEN_PIN        GPIO_PIN_0
    
    //RED_ON,OFF
    #define LED_RED_ON    HAL_GPIO_WritePin(LED_RED_GPIO_PORT,LED_RED_PIN,GPIO_PIN_RESET);
    #define LED_RED_OFF   HAL_GPIO_WritePin(LED_RED_GPIO_PORT,LED_RED_PIN,GPIO_PIN_SET);
    
    //GREEN_ON,OFF
    #define LED_GREEN_ON    HAL_GPIO_WritePin(LED_GREEN_GPIO_PORT,LED_GREEN_PIN,GPIO_PIN_RESET);
    #define LED_GREEN_OFF   HAL_GPIO_WritePin(LED_GREEN_GPIO_PORT,LED_GREEN_PIN,GPIO_PIN_SET);
    
    //RED_Blinker
    #define LED_RED_Blinker LED_RED_ON;
                            delay_ms(500);
                                                    LED_RED_OFF;
                                                    delay_ms(500);
    
    //GREEN_Blinker
    #define LED_GREEN_Blinker LED_GREEN_ON;
                                                         delay_ms(500);
                               LED_GREEN_OFF;
                                                         delay_ms(500);
                                                         
    //RED_GREEN_Blinker
    #define LED_RED_GREEN_Blinker LED_RED_ON;
                                                              delay_ms(500);
                                                                LED_RED_OFF;
                                                                LED_GREEN_ON;
                                                                delay_ms(500);
                                                                LED_GREEN_OFF;
                                                            
    void LED_Init(void);                                                    
    #endif

    led.c

    #include "led.h"
    
    void LED_Init()
    {
        GPIO_InitTypeDef LED_GPIO_InitStructure;
        
        __HAL_RCC_GPIOB_CLK_ENABLE();   //led.cÎļþÖÐÓëΨһµÄ²»Í¬ÊÇʱÖÓʹÄÜÄØ¸ö²»Ò»Ñù
    
        //RED_Config
        LED_GPIO_InitStructure.Pin=LED_RED_PIN;
        LED_GPIO_InitStructure.Mode=GPIO_MODE_OUTPUT_PP;
        LED_GPIO_InitStructure.Pull=GPIO_PULLUP;
        LED_GPIO_InitStructure.Speed=GPIO_SPEED_FREQ_VERY_HIGH;
        HAL_GPIO_Init(LED_RED_GPIO_PORT,&LED_GPIO_InitStructure);
        
        //GREEN_Config
        LED_GPIO_InitStructure.Pin=LED_GREEN_PIN;
        HAL_GPIO_Init(LED_GREEN_GPIO_PORT,&LED_GPIO_InitStructure);
        
        LED_RED_OFF;
        LED_GREEN_OFF;
    }

    main

     

    #include "led.h"
    
    int main(void)
    {
        HAL_Init();                     
        Stm32_Clock_Init(360,25,2,8);   
        delay_init(180);                
        LED_Init();                     
        
        while(1)
        {
            LED_RED_GREEN_Blinker;
        }
    }
  • 相关阅读:
    ●BZOJ 3926 [Zjoi2015]诸神眷顾的幻想乡
    ●BZOJ 1396 识别子串
    ●UVA 1608 Non-boring sequences
    ●SPOJ 8222 NSUBSTR–Substrings
    ●SPOJ 7258 Lexicographical Substring Search
    ●CodeForces 429D Trick_Function
    ●BZOJ 2555 SubString
    ●洛谷P2664 树上游戏
    ●洛谷P3168 [CQOI2015]任务查询系统
    【UVA1057】Routing
  • 原文地址:https://www.cnblogs.com/CaiFengYuanXing/p/13624014.html
Copyright © 2011-2022 走看看