按键输入的实验中LED只能亮不能灭的问题
在跟着视频学习按键输入的过程中,例程是通过位操作对LED进行点亮熄灭,我就直接用函数对相应口进行操作,发现程序下载好后按键只能点亮LED,但是无法熄灭灯,我看了一下LED那两个I/O口的设置,是50MHz、推挽输出的。之前进行点灯实验室能灭,此实验就不能灭了,求论坛各位前辈点拨一下0.0,程序如下
#include "stm32f10x.h"
#include "led.h"
#include "delay.h"
#include "keyscan.h"
//#include "beep.h"
unsigned char i;
int main()
{
delay_init();
led_init();
key_init();
GPIO_SetBits(GPIOE,GPIO_Pin_5);
GPIO_ResetBits(GPIOB,GPIO_Pin_5);
//beep_init();
while(1)
{
i=key_scan(0);
if(i==1)
{
switch(i)
{
case key0_on:
GPIO_ResetBits(GPIOB,GPIO_Pin_5);
GPIO_ResetBits(GPIOE,GPIO_Pin_5);
break;
case key1_on:
GPIO_ResetBits(GPIOB,GPIO_Pin_5);
GPIO_SetBits(GPIOE,GPIO_Pin_5);
break;
case key2_on:
GPIO_SetBits(GPIOB,GPIO_Pin_5);
GPIO_ResetBits(GPIOE,GPIO_Pin_5);
break;
case key_up_on:
GPIO_SetBits(GPIOB,GPIO_Pin_5);
GPIO_SetBits(GPIOE,GPIO_Pin_5);
break;
}
}else delay_ms(10);
}
}
仔细看看上面圈出来这两个地方是否有问题?
逍遥李 发表于 2017-5-23 18:14
仔细看看上面圈出来这两个地方是否有问题?
谢谢。不好意思,这种错误都没发现还麻烦您,实在是抱歉。
页:
[1]