G2A Many GEOs
SHARE
TWEET

Untitled

a guest May 16th, 2018 149 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // potřebné knihovny
  2. #include <Servo.h>
  3. #include <EEPROM.h>
  4.  
  5. const int Servo1Pin = 9;   // Cisla pinu pouzitych pro pripojeni jednotlivych serv
  6. const int Servo2Pin = 10;  // Cisla pinu pouzitych pro pripojeni jednotlivych serv
  7.  
  8. const int Button1Pin = 3;   //Analogovy input jako digitalni vstup
  9.  
  10. int led1 = 12;
  11. int led2 = 6;
  12.  
  13. //Promenne pro tlacitka
  14.  
  15. int Button1State = 0;
  16.  
  17. //Promenne pro serva
  18.  
  19. int Servo1Position = EEPROM.read(1);  //Poloha serva 1 je ulozena na adrese 1
  20. int Servo2Position = EEPROM.read(2);  //Poloha serva 2 je ulozena na adrese 2
  21.  
  22. //Inicializace serv
  23.  
  24. Servo Servo1;
  25. Servo Servo2;
  26.  
  27. void setup()
  28. {
  29.   // Aktivace pinu pro tlacitka
  30.  
  31.   pinMode(Button1Pin, INPUT_PULLUP);
  32.  
  33.   pinMode(led1, OUTPUT);
  34.   pinMode(led2, OUTPUT);
  35.  
  36.   //Pripojeni a nastaveni serv po restartu
  37.  
  38.   Servo1.attach(Servo1Pin);          //Aktivace serva
  39.   Servo1.write(Servo1Position);      //Nastaveni polohy serva (ve stupnich)
  40.   delay(200);                        //Rychlost prestaveni serva vyjadrena v dobe potrebne ke zmene polohy v ms
  41.   Servo1.detach();                   //Deaktivace serva
  42.  
  43.   Servo2.attach(Servo2Pin);
  44.   Servo2.write(Servo2Position);
  45.   delay(200);
  46.   Servo2.detach();
  47.  
  48. }
  49.  
  50. void loop() {                                //Hlavni smycka
  51.  
  52.   Button1State = digitalRead(Button1Pin);
  53.  
  54.     if (Servo1Position == 40) {            
  55.       digitalWrite(led1, LOW); //zapnutí led
  56.       digitalWrite(led2, HIGH); //zapnutí led
  57.       }
  58.    
  59.     if (Servo1Position == 20) {            
  60.       digitalWrite(led1, HIGH); //zapnutí led
  61.       digitalWrite(led2, LOW); //zapnutí led
  62.       }
  63.  
  64.     if (Button1State == HIGH) {             //Pri stisku tlacitka 1...
  65.  
  66.         Servo1.attach(Servo1Pin);             //...pripoj servo 1...
  67.         Servo2.attach(Servo2Pin);             //...a servo 2...
  68.  
  69.         switch (Servo1Position) {             //...v zavislosti na poloze prvniho serva zmen polohu obou serv...
  70.           case 20:
  71.             Servo1.write(40);
  72.             delay(300);                         //...pozadovanou rychlosti (cim vyssi hodnota, tim nizsi rychlost prestaveni)
  73.             Servo2.write(45);
  74.             delay(300);
  75.             Servo1Position = 40;
  76.             EEPROM.update (1, 40);              //...zapis nove polohy do EEPROM...
  77.             EEPROM.update (2, 45);
  78.             break;
  79.  
  80.           case 40:
  81.             Servo1.write(20);
  82.             delay(300);
  83.             Servo2.write(30);
  84.             delay(300);
  85.             Servo1Position = 20;
  86.             EEPROM.update (1, 20);
  87.             EEPROM.update (2, 30);
  88.             break;
  89.         }
  90.  
  91.         Servo1.detach();                          //... a deaktivuj serva
  92.         Servo2.detach();
  93.  
  94.       }
  95. }
RAW Paste Data
Ledger Nano X - The secure hardware wallet
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top