目前网上的抢答器案例主要存在问题:就是无法实现一旦有人抢答上灯亮后其他灯不能再被点亮。
现将解决方案发布如下:(注:两路抢答器,多路同理)
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版权协议,转载请附上原文出处链接和本声明。