Presun starych
[mirrors/Programs.git] / arduino / bomba2b / bomba2b.ino
diff --git a/arduino/bomba2b/bomba2b.ino b/arduino/bomba2b/bomba2b.ino
deleted file mode 100644 (file)
index 5c49c1c..0000000
+++ /dev/null
@@ -1,219 +0,0 @@
-/*
- * Exit Rum 2
- * (c) Tomas 'Harvie' Mudrunka 2018
- */
-
-//Nastaveni bomby
-
-#define DISARM_CODE "73138477"
-#define TIME_COUNTDOWN 600 //600
-//#define TIME_COUNTDOWN 15
-
-//Prirazeni pinu
-
-#define PIN_CABLE_CHECK 2
-
-#define PIN_KEY_CLK 3          //IRQ!
-#define PIN_KEY_DATA 4
-
-#define PIN_LED_G 5
-#define PIN_LED_B 6
-#define PIN_LED_R 7
-
-#define PIN_COIL_LO 10
-#define PIN_COIL_HI 11
-
-#define ADDR_DISPLAY 0x70
-
-//////////////////////////////////////////////////////////////////
-
-#define SOFTSERIAL
-
-#ifndef SOFTSERIAL
-#include <PS2Keyboard.h>
-PS2Keyboard keyboard;
-#else
-#include <SoftwareSerial.h>
-SoftwareSerial mySerial(PIN_KEY_CLK, PIN_KEY_DATA);
-#endif
-
-//#include <Wire.h> // Enable this line if using Arduino Uno, Mega, etc.
-#include <Adafruit_GFX.h>
-#include "Adafruit_LEDBackpack.h"
-
-Adafruit_7segment display = Adafruit_7segment();
-
-#define cnt_sec(s) (s%60)
-#define cnt_min(s) (s/60)
-#define cnt_dec(s) (cnt_min(s)*100+cnt_sec(s))
-
-void setup()
-{
-    //Pripravime periferie
-    Serial.begin(9600);
-    Serial.println("zaciname");
-#ifndef SOFTSERIAL
-    keyboard.begin(PIN_KEY_DATA, PIN_KEY_CLK);
-#else
-    mySerial.begin(4800);
-#endif
-    display.begin(ADDR_DISPLAY);
-
-    pinMode(PIN_LED_R, OUTPUT);
-    pinMode(PIN_LED_G, OUTPUT);
-    pinMode(PIN_LED_B, OUTPUT);
-    pinMode(PIN_COIL_LO, OUTPUT);
-    pinMode(PIN_COIL_HI, OUTPUT);
-    pinMode(PIN_CABLE_CHECK, INPUT_PULLUP);
-}
-
-int test_disarmed(int reset)
-{
-
-    static int guessed = 0, disarmed = 0;
-    if (reset) {
-       guessed = 0;
-       disarmed = 0;
-    }
-    //Cteme klavesnici
-#ifndef SOFTSERIAL
-    while (keyboard.available()) {
-           char c = keyboard.read();
-      //Serial.print("Klavesa: ");
-      //Serial.println(c);
-#else
-    while (mySerial.available()) {
-      char c = mySerial.read();
-#endif
-#ifndef SOFTSERIAL
-       if (c == PS2_ENTER) {
-           Serial.println();
-       } else {
-#else
-  if(1) {    
-#endif
-           Serial.print(c);
-       }
-
-  if (c < '0' || c > '9') {
-     Serial.println("IGNORED!");
-    continue;
-    
-    }
-       if (c == DISARM_CODE[guessed]) {
-           guessed++;
-           Serial.println("\nGOT!");
-       } else {
-           guessed = 0;
-           Serial.println("\nFAIL!");
-      if (c == DISARM_CODE[guessed]) {
-        guessed++;
-        Serial.println("\nGOT!");
-      }
-       }
-       if (DISARM_CODE[guessed] == 0) {
-           disarmed = 1;
-           Serial.println("\nDISARMED!");
-       }
-    }
-
-    return disarmed;
-
-}
-
-void loop()
-{
-    //Vynulujem periferie
-    digitalWrite(PIN_COIL_LO, LOW);
-    digitalWrite(PIN_COIL_HI, LOW);
-    analogWrite(PIN_LED_R, 0);
-    analogWrite(PIN_LED_G, 0);
-    analogWrite(PIN_LED_B, 0);
-
-    display.clear();
-    display.setBrightness(15);
-    display.writeDisplay();
-
-#ifndef SOFTSERIAL
-    while (keyboard.available())
-       keyboard.read();
-#else
-    while (mySerial.available())
-  mySerial.read();
-#endif
-    test_disarmed(1);
-
-    //Pockame na pripojeni kabelu
-    display.print(0xCAB1, HEX);
-    display.writeDisplay();
-    while (digitalRead(PIN_CABLE_CHECK))
-       delay(100);
-
-    //Pockame na odpojeni kabelu
-    display.clear();
-    display.writeDisplay();
-    while (!digitalRead(PIN_CABLE_CHECK))
-       delay(100);
-
-    //Odpocitavame
-    for (int cnt = TIME_COUNTDOWN; cnt >= 0 && !test_disarmed(0); cnt--) {
-       display.print(cnt_dec(cnt), DEC);
-       display.drawColon((cnt + 1) % 2);
-       display.writeDisplay();
-
-       analogWrite(PIN_LED_R, random(0, 3));
-       analogWrite(PIN_LED_G, random(0, 3));
-       analogWrite(PIN_LED_B, random(0, 3));
-
-       //Tikani / pipani
-       tone(PIN_COIL_LO, 1000, 50);
-       delay(60);
-       digitalWrite(PIN_COIL_LO, HIGH);
-       delay(40);
-       digitalWrite(PIN_COIL_LO, LOW);
-
-       delay(900);
-
-    }
-
-
-    while (!test_disarmed(0)) {
-       //Bomba vybouchla
-       int i;
-
-       analogWrite(PIN_LED_R, random(0, 255));
-       analogWrite(PIN_LED_G, random(0, 0));
-       analogWrite(PIN_LED_B, random(0, 255));
-
-       for (i = 0; i < 10; i++)
-           display.writeDigitRaw(i, random(0, 255));
-       display.setBrightness(random(0, 15));
-       display.writeDisplay();
-
-       digitalWrite(PIN_COIL_HI, HIGH);
-       delay(20);
-       digitalWrite(PIN_COIL_HI, LOW);
-       int rnd = random(30, 100);
-       tone(PIN_COIL_LO, random(100, 8000), rnd);
-       delay(rnd);
-    }
-
-
-    //Bomba byla deaktivovana
-    tone(PIN_COIL_LO, 3000, 500);
-    delay(500);
-    tone(PIN_COIL_LO, 5000, 500);
-    analogWrite(PIN_LED_R, 0);
-    analogWrite(PIN_LED_G, 0);
-    analogWrite(PIN_LED_B, 0);
-    display.print(0xDEFD, HEX);
-    display.writeDisplay();
-    delay(1000);
-
-
-    //Pockame na zmenu kabelu
-    char s = digitalRead(PIN_CABLE_CHECK);
-    while (digitalRead(PIN_CABLE_CHECK) == s)
-       delay(100);
-
-}
This page took 0.228554 seconds and 4 git commands to generate.