Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // OVDJE UBACI LIBRARYIE KOJI TI TREBAJU
- // GLOBALNE VARIJABLE
- uint8_t trenutniKat = 0; // 0 = PRIZEMLJE ; 1 = PRVI KAT ; 2 = DRUGI KAT
- uint8_t ciljaniKat = 0; // 0 = PRIZEMLJE ; 1 = PRVI KAT ; 2 = DRUGI KAT
- bool uPokretu = false;
- uint8_t const tipkala[3] = {
- // PIN TIPKE PRIZEMLJA
- // PIN TIPKE PRVOG KATA
- // PIN TIPKE DRUGOG KATA
- };
- uint8_t const senzori[3] = {
- // PIN SENZORA PRIZEMLJA
- // PIN SENZORA PRVOG KATA
- // PIN SENZORA DRUGOG KATA
- };
- // FUNKCIJE
- void setup()
- {
- // DEFINICIJA PINOVA - DODAJ JOŠ ŠTO TI TREBA ZA MOTOR ITD...
- for (uint8_t i = 0; i < 3; i++)
- {
- pinMode(tipkala[i], INPUT_PULLUP);
- pinMode(senzori[i], INPUT);
- }
- }
- void loop()
- {
- if (uPokretu)
- {
- // DIO VEZAN ZA SENZORE
- if (digitalRead(senzori[ciljaniKat]) == HIGH)
- {
- gasiMotor();
- // OTVARANJE VRATA
- // OVDJE STAVI KOD ZA OTVARANJE VRATA
- delay(5000); // ČEKA PET SEKUNDI
- // OVDJE STAVI KOD ZA ZATVARANJE VRATA
- }
- else
- {
- // DIO VEZAN ZA TIPKALA
- for (uint8_t i = 0; i < 3; i++)
- {
- if (digitalRead(tipkala[i]) == LOW) // TIPKALO JE PRITISNUTO
- {
- if (ciljaniKat != trenutniKat) // CILJANI KAT MORA BIT RAZLIČIT OD TRENUTNOG
- {
- ciljaniKat = tipkala[i];
- if (tipkala[i] > trenutniKat) paliMotor(true);
- else paliMotor(false);
- break; // PREKID PETLJE
- }
- }
- }
- }
- }
- }
- void paliMotor(bool const smjer /* FALSE = DOLE ; TRUE = GORE */)
- {
- uPokretu = true;
- // TU STAVI KOD KOJI TI PALI MOTOR (VJEROJATNO KORISTIŠ FULL BRIDGE ZA KONTROLU SMJERA VRTNJE DC MOTORA)
- }
- void gasiMotor()
- {
- uPokretu = false;
- // TU STAVI KOD KOJI TI GASI MOTOR
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement