STM32 的GPIO流水灯,程序下进去后,4个LED先全部都亮,然后才逐个点亮;我不太明白,怎么开始会全部都亮
#include"stm32f10x_lib.h"GPIO_InitTypeDefGPIO_InitStructure;//声明GPIO_InitStructurevoi...
#include "stm32f10x_lib.h"
GPIO_InitTypeDef GPIO_InitStructure;//声明GPIO_InitStructure
void LED_Init(void)
{
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE, ENABLE); //开GPIOA时钟
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1| GPIO_Pin_2 | GPIO_Pin_3 ;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //推挽输出
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; // 设定输出速率2MHZHz
GPIO_Init(GPIOE, &GPIO_InitStructure); //初始化GPIOE
}
void Delay(u32 nCount) //延时函数
{
for(; nCount != 0; nCount--);
}
int main(void)
{
LED_Init();
while(1)
{
GPIO_ResetBits(GPIOE, GPIO_Pin_1);//set GPIOE.1=0
Delay(0x8ffff);
GPIO_SetBits(GPIOE, GPIO_Pin_1);//set GPIOE.1=1
//Delay(0x4ffff);
GPIO_ResetBits(GPIOE, GPIO_Pin_0);//set GPIOE.0=0
Delay(0x8ffff);
GPIO_SetBits(GPIOE, GPIO_Pin_0);//set GPIOE.0=1
//Delay(0x4ffff);
GPIO_ResetBits(GPIOE, GPIO_Pin_2);//set GPIOE.2=0
Delay(0x8ffff);
GPIO_SetBits(GPIOE, GPIO_Pin_2);//set GPIOE.2=1
//Delay(0x4ffff);
GPIO_ResetBits(GPIOE, GPIO_Pin_3);//set GPIOE.3=0
Delay(0x8ffff);
GPIO_SetBits(GPIOE, GPIO_Pin_3);//set GPIOE.3=1
//Delay(0x4ffff);
}
} 展开
GPIO_InitTypeDef GPIO_InitStructure;//声明GPIO_InitStructure
void LED_Init(void)
{
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE, ENABLE); //开GPIOA时钟
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1| GPIO_Pin_2 | GPIO_Pin_3 ;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //推挽输出
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; // 设定输出速率2MHZHz
GPIO_Init(GPIOE, &GPIO_InitStructure); //初始化GPIOE
}
void Delay(u32 nCount) //延时函数
{
for(; nCount != 0; nCount--);
}
int main(void)
{
LED_Init();
while(1)
{
GPIO_ResetBits(GPIOE, GPIO_Pin_1);//set GPIOE.1=0
Delay(0x8ffff);
GPIO_SetBits(GPIOE, GPIO_Pin_1);//set GPIOE.1=1
//Delay(0x4ffff);
GPIO_ResetBits(GPIOE, GPIO_Pin_0);//set GPIOE.0=0
Delay(0x8ffff);
GPIO_SetBits(GPIOE, GPIO_Pin_0);//set GPIOE.0=1
//Delay(0x4ffff);
GPIO_ResetBits(GPIOE, GPIO_Pin_2);//set GPIOE.2=0
Delay(0x8ffff);
GPIO_SetBits(GPIOE, GPIO_Pin_2);//set GPIOE.2=1
//Delay(0x4ffff);
GPIO_ResetBits(GPIOE, GPIO_Pin_3);//set GPIOE.3=0
Delay(0x8ffff);
GPIO_SetBits(GPIOE, GPIO_Pin_3);//set GPIOE.3=1
//Delay(0x4ffff);
}
} 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询