stm32控制led灯

stm32控制LED灯

GPIO初始化配置

void GPIO_Config(void)                            //GPIO初始配置
{
    GPIO_InitTypeDef GPIO_InitStructure;      //定义结构体变量
 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD, ENABLE); //使能GPIOD的时钟

    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;                    //指定引脚13
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;        //设置输出速率50MHz
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;        //推挽输出模式
    GPIO_Init(GPIOD, &GPIO_InitStructure);                            //初始化外设GPIOx寄存器
}

点亮、熄灭函数

#define LED_ON GPIO_SetBits(GPIOD, GPIO_Pin_13)        //端口置1
#define LED_OFF GPIO_ResetBits(GPIOD, GPIO_Pin_13)     //端口置0

`注意高电平点亮,低电平熄灭

延时函数

void delay(u32 t)            //延时函数
{
    u16 i;
    while(t--)
        for(i=0;i<1000;i++);
}

主函数

int main()
{
    GPIO_Config();            //GPIOD_1初始化配置
    while(1)
    {
        LED_ON;                    //点亮
        delay(1000);         //延时大概几百毫秒
        LED_OFF;                //熄灭
        delay(1000);
    }

}

猜你喜欢

转载自blog.csdn.net/bxyBLUR/article/details/106796601