标题: 新人求助关于stm32按键控制led的问题 [打印本页]

作者: YQHUOGE    时间: 2018-10-28 17:12
标题: 新人求助关于stm32按键控制led的问题
刚接触,求大神指导一下现在按下PB8,PC13会输出高电平了
如何按一下PB8,PC13会一直输出高电平呢?
我还想增加一个PB7,按一下PB7,PC13会输出低电平
实现按一下PB8灯亮,按一下PB7灯灭

int KEY = PB8;
int iLed = PC13;


void setup()
{
  pinMode(PB8, INPUT);  
  pinMode(iLed, OUTPUT);  
}


void loop() {
  
  digitalWrite(PC13,LOW);
  if(digitalRead(PB8)==LOW) {
  delay(100);
  if(digitalRead(PB8)==LOW) {
  digitalWrite(PC13,HIGH);
  while(digitalRead(PB8)==LOW) {


    }
  }
  }
}

作者: yousunny    时间: 2018-10-31 17:42
提示:只要设置一个标志位,主循环中检测就可以!!
作者: jj449    时间: 2018-11-1 07:25
这个 arduino 的代码,很简单的,不用想太多 ,改成这样试试看 :
void loop() {
if(digitalRead(PB8)==HIGH) {
digitalWrite(PC13,HIGH);
}
if(digitalRead(PB7)==HIGH) {
digitalWrite(PC13,LOW);
}
}


作者: wushiye54    时间: 2018-11-1 08:54
STM32可以这样写的?
作者: ngvhh    时间: 2018-11-1 09:20
设置标准位然后反转
作者: cuihaodianzi    时间: 2018-11-1 12:38
LED 状态取反就可以了
作者: YQHUOGE    时间: 2018-11-3 15:57
yousunny 发表于 2018-10-31 17:42
提示:只要设置一个标志位,主循环中检测就可以!!

多谢多谢,最近学习单片机,真的很难啊
作者: YQHUOGE    时间: 2018-11-3 15:58
jj449 发表于 2018-11-1 07:25
这个 arduino 的代码,很简单的,不用想太多 ,改成这样试试看 :
void loop() {
if(digitalRead(PB8)== ...

多谢多谢,我研究研究,最近学习单片机,真的很难啊

作者: YQHUOGE    时间: 2018-11-3 16:00
wushiye54 发表于 2018-11-1 08:54
STM32可以这样写的?

arduino写的,这个稍微简单点,要不太难了
作者: YQHUOGE    时间: 2018-11-3 16:00
ngvhh 发表于 2018-11-1 09:20
设置标准位然后反转

多谢多谢
作者: YQHUOGE    时间: 2018-11-3 16:01
cuihaodianzi 发表于 2018-11-1 12:38
LED 状态取反就可以了

多谢多谢




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1