接触STM8不久,用查询法来检查K2(PD.7)按下否,如果按下,则LED2(PE.3)亮,再按下,LED2灭,但是烧录后,程序好像走到while(!bit_status2)后程序停住了,按下按键,灯亮,再按下,灯还是亮,无法灭。
按键函数如下,主程序只是调用这个函数,是哪里出了问题呢?真心求解。
void anjian_K2(void) //K2按下,LED2取反
{
BitStatus bit_status2;
bit_status2= GPIO_ReadInputPin(GPIOE, GPIO_PIN_3);
if (!bit_status2 ) //SET or RESET
{
delay_ms(2000);
if (!bit_status2)
{
GPIO_WriteReverse(GPIOD, GPIO_PIN_0); //LED2取反
while(!bit_status2);
}
}
|