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