From f166e3571dd2a3d1b42fe8e88802daed79018ba2 Mon Sep 17 00:00:00 2001 From: Pierrick C Date: Sun, 24 Sep 2017 19:48:55 +0200 Subject: [PATCH] =?UTF-8?q?Ajout=20ouverture=20forc=C3=A9=20par=20l'utilis?= =?UTF-8?q?ateur=20(switch=20sur=20pin=206)=20Ajout=20signal=20sur=20LED?= =?UTF-8?q?=20pour=20bonne=20ou=20mauvaise=20ajout/suppression=20de=20tagR?= =?UTF-8?q?FID=20dans=20l'EEPROM?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cat_on_diet_feeder/cat_on_diet_feeder.ino | 34 +++++++++++++++++-- 1 file changed, 31 insertions(+), 3 deletions(-) diff --git a/code/cat_on_diet_feeder/cat_on_diet_feeder.ino b/code/cat_on_diet_feeder/cat_on_diet_feeder.ino index 625a9bf..9aea039 100644 --- a/code/cat_on_diet_feeder/cat_on_diet_feeder.ino +++ b/code/cat_on_diet_feeder/cat_on_diet_feeder.ino @@ -12,6 +12,7 @@ #define RFID_TX 3 #define PROG_BUTTON 4 #define SERVO_CTRL 5 +#define DOOR_BUTTON 6 // Others parameters #define SERVO_SPEED 2 @@ -277,11 +278,22 @@ void addNewTag(byte tag[14]) { int tmp = findtag(tag); if (tmp != -1 and tmp == tagnb) { Serial.println("OK"); + for (int i=0; i<3; i++) { + digitalWrite(GREEN_LED, HIGH); + delay(500); + digitalWrite(GREEN_LED, LOW); + delay(500); + } } else { Serial.println("Failed"); + for (int i=0; i<5; i++) { + digitalWrite(RED_LED, HIGH); + delay(500); + digitalWrite(RED_LED, LOW); + delay(500); + } } - } void delTag(byte tag[14]) { @@ -303,9 +315,19 @@ void delTag(byte tag[14]) { int tmptag = readeepromtag(tagnb); if (comparetag(tmptag, emptytag)) { Serial.println("OK"); + digitalWrite(GREEN_LED, HIGH); + delay(500); + digitalWrite(GREEN_LED, LOW); + delay(500); } else { Serial.println("Failed"); + for (int i=0; i<5; i++) { + digitalWrite(RED_LED, HIGH); + delay(500); + digitalWrite(RED_LED, LOW); + delay(500); + } } } @@ -326,6 +348,7 @@ void setup() { //Mode for button and end-stop pinMode(PROG_BUTTON, INPUT_PULLUP); + pinMode(DOOR_BUTTON, INPUT_PULLUP); Serial.print(F("EEPROM length : ")); Serial.print(EEPROM.length()); @@ -340,10 +363,15 @@ void setup() { void loop() { tag_ok = -1; - if (RFID.available() > 0 and !door_state ) readRFID(); + if (RFID.available() > 0 and !door_state ) { + readRFID(); + } + if (!digitalRead(DOOR_BUTTON)) { + Serial.println("Ouverture par l'utilisateur."); + door_state = 1; + } updateDoor(); - updateRedLED(); delay(10);