改进版arduino完美抢答器

目前网上的抢答器案例主要存在问题:就是无法实现一旦有人抢答上灯亮后其他灯不能再被点亮。

现将解决方案发布如下:(注:两路抢答器,多路同理)

int redled = 3;
int greenled = 2;
int redpin = 10;
int greenpin = 8;
int reset = 7;
int red;
int green;
int flag = 0;

void setup()
{
  pinMode(redled, OUTPUT); 
  pinMode(greenled, OUTPUT);
  pinMode(redpin, INPUT); 
  pinMode(greenpin, INPUT);
  pinMode(reset, INPUT);
}
void loop()
{
  red = digitalRead(redpin);
  if (red == LOW and flag == 0)
  { 
    flag = 1;
    digitalWrite(redled, HIGH);
  }
    green = digitalRead(greenpin);
  if (green ==LOW and flag == 0 )
  {
    flag=1;
    digitalWrite(greenled, HIGH);
  }
      if (digitalRead(offswitch) == LOW)
  {
    flag = 0;
    digitalWrite(redled, LOW);   
    digitalWrite(greenled, LOW);
  }
}

版权声明:本文为weixin_44045048原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。