实验二:LED实验
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB , ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1; //PB1ÉèÖÃΪÊäÈë
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
GPIO_Init(GPIOB, &GPIO_InitStructure);
/* Configure IO connected to D3,D4 *********************/
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11 | GPIO_Pin_12;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOB, &GPIO_InitStructure);
while (1)
{
if(GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_1)==0) //Èç¹ûPA0 = 0
{
GPIO_ResetBits(GPIOB, GPIO_Pin_11); //D1ÁÁ
GPIO_SetBits(GPIOB, GPIO_Pin_12);
}
//for(i=0;i<100;i++)Delay(1000);Delay(1000);
else
{
GPIO_ResetBits(GPIOB, GPIO_Pin_12); //D1ÁÁ
GPIO_SetBits(GPIOB, GPIO_Pin_11);
}
//for(i=0;i<100;i++)Delay(1000);Delay(1000);
}
}
//问题是没有识别到PB1口的输入。正在查。。
问题原来是IO口设置错误,我设置为了浮空输入,但是我们PB1没有上拉电阻,这里改为上拉输入就可以了。
给个LED与输入的程序大家看看。
按键控制LED.rar