STM32-LED闪灯

main.c  程序段

#include "stm32f10x.h" //STM32头文件
#include "sys.h"
#include "delay.h"
#include "led.h" 


int main (void){//主程序
    RCC_Configuration(); //时钟设置
    LED_Init();
    while(1){
        
        //方法1:
//        GPIO_WriteBit(LEDPORT,LED1,(BitAction)(1)); //LED1接口输出高电平1
//        delay_us(50000); //延时1秒
//        GPIO_WriteBit(LEDPORT,LED1,(BitAction)(0)); //LED1接口输出低电平0
//        delay_us(50000); //延时1秒
        
        //方法2:
//        GPIO_WriteBit(LEDPORT,LED1,(BitAction)(1-GPIO_ReadOutputDataBit(LEDPORT,LED1))); //取反LED1
//        delay_ms(500); //延时1秒

        //方法3:
        GPIO_SetBits(LEDPORT,LED1); //LED灯都为高电平(1)
        delay_s(1); //延时1秒
        GPIO_ResetBits(LEDPORT,LED1); //LED灯都为低电平(0)
        delay_s(1); //延时1秒

        //方法4
//        GPIO_Write(LEDPORT,0x0001); //直接数值操作将变量值写入LED
//        delay_s(2); //延时1秒
//        GPIO_Write(LEDPORT,0x0000); //直接数值操作将变量值写入LED
//        delay_s(2); //延时1秒

    }
}
#ifndef __LED_H
#define __LED_H     
#include "sys.h"

//#define LED1 PBout(0)// PB0
//#define LED2 PBout(1)// PB1    
#define LEDPORT    GPIOB    //定义IO接口
#define LED1    GPIO_Pin_0    //定义IO接口
#define LED2    GPIO_Pin_1    //定义IO接口



void LED_Init(void);//初始化

                             
#endif

led.h头文件 程序段

 

函数用法可参考固件函数库库数据手册

方法1:

函数GPIO_WriteBit

法2:循环取反,1-0=1,1-1=0,1-0=1.。。。。。。。

 

法3:

GPIO_WriteBit

法4:GPIO端口写值

 GPIO_Write


posted @ 2020-11-24 15:25  你是我阳光  阅读(380)  评论(0)    收藏  举报