#include "urutils.h"
int led = 21;
int porta = 15;
int dentro = 2;
int aperto = 0;
int a0 = LOW;

void setup()
{
  Serial.begin(115200);
  pinMode(led, OUTPUT);
  pinMode(porta, INPUT);
  pinMode(dentro, INPUT);
  pinMode(aperto, INPUT);
}

void loop ()
{
  int a = digitalRead(porta);
  if (a0 == HIGH && a == LOW) //fronte di discesa
  {
    Serial.println("fronte di discesa");
    int b = digitalRead(dentro);
    if (b == HIGH)
    {
      digitalWrite(led, HIGH);
      Serial.println("il topo in gabbia");
    } else {
      Serial.println("il topo è furbo");
      digitalWrite(led, LOW);
    }
  }
  a0 = a;
  if (digitalRead(aperto) == HIGH)
  {
    waitUntilInputLow(aperto, 50);
    Serial.println("la gabbia è aperta");
    a0 = LOW;
    digitalWrite(led, LOW);
  }
  delay(10);
}
esp:0
esp:2
esp:4
esp:5
esp:12
esp:13
esp:14
esp:15
esp:16
esp:17
esp:18
esp:19
esp:21
esp:22
esp:23
esp:25
esp:26
esp:27
esp:32
esp:33
esp:34
esp:35
esp:3V3
esp:EN
esp:VP
esp:VN
esp:GND.1
esp:D2
esp:D3
esp:CMD
esp:5V
esp:GND.2
esp:TX
esp:RX
esp:GND.3
esp:D1
esp:D0
esp:CLK
btn1:1.l
btn1:2.l
btn1:1.r
btn1:2.r
btn3:1.l
btn3:2.l
btn3:1.r
btn3:2.r
r1:1
r1:2
r2:1
r2:2
r3:1
r3:2
r4:1
r4:2
led1:A
led1:C
sw1:1
sw1:2
sw1:3