Elektro zámok

Nedaří se vám s projektem a nenašli jste vhodné místo, kde se zeptat? Napište sem.
Pravidla fóra
Tohle subfórum je určeno pro konzultaci ucelených nápadů, popřípadě řešení komplexnějších projektů, které opravdu není možné rozdělit na menší části.
Většinu problémů jde rozdělit na menší a ptát se na ně v konkrétních subfórech.
Sperhak
Příspěvky: 46
Registrován: 22 čer 2018, 19:49
Reputation: 0

Re: Elektro zámok

Příspěvek od Sperhak » 10 čer 2020, 18:48

No ved som to tak zmenil či nie? písal som čo som urobil.

martinius96
Příspěvky: 579
Registrován: 01 srp 2017, 19:29
Reputation: 0
Bydliště: Poprad
Kontaktovat uživatele:

Re: Elektro zámok

Příspěvek od martinius96 » 10 čer 2020, 19:08

No, bola tam jedna chybička (tie sa nájdu vždy)...
Program funguje, keď máš ten vstup ako PULLUP. Pri stlačení signálu je na vstupe 0V (LOW).

Kód: Vybrat vše

const int buttonPin = 10; // číslo pinu tlačítka
const int ledPin = 11; // číslo pinu LED
const int ledPin2 = 13;

long lastDebounceTime = 0;
long debounceDelay = 1500;
int buttonState1 = HIGH;
int lastButtonState1 = LOW;
unsigned long debounceInterval = 50;
unsigned long timer = 0;
unsigned long lastDebounceTime1 = 0;
int reading;
int rezim = 0;
void setup() {
  Serial.begin(115200);
  pinMode(buttonPin, INPUT);
  pinMode(ledPin, OUTPUT);
  pinMode(ledPin2, OUTPUT);
}

void loop() {
  switch (rezim) {
    case 0:
      reading = digitalRead(buttonPin);
      Serial.println(reading);
      if (reading == LOW) {
        timer = millis();
        reading = digitalRead(buttonPin);
        while (reading == LOW) {
          reading = digitalRead(buttonPin);
          if (millis() - timer >= debounceDelay) {
            digitalWrite(ledPin2, HIGH);
            rezim = 1;
            Serial.println("LED ZAPNUTA");
            break;
          }
        }
      }
      break;
    default:
      reading = digitalRead(buttonPin);
      if (reading != lastButtonState1) {
        lastDebounceTime1 = millis();
      }
      if (((millis() - lastDebounceTime1) > debounceInterval)&& lastDebounceTime1!=0){
        if (reading != buttonState1) {
          buttonState1 = reading;
          if (buttonState1 == LOW) {
            digitalWrite(ledPin2, LOW);
            rezim = 0;
            Serial.println("LED VYPNUTA");
          }
        }
      }
      lastButtonState1 = reading;
      break;
  }
}

Sperhak
Příspěvky: 46
Registrován: 22 čer 2018, 19:49
Reputation: 0

Re: Elektro zámok

Příspěvek od Sperhak » 10 čer 2020, 21:21

Asi si ma nepochopil, alebo sa to tebe správa inak ako mne. Pozrime na tento posledný program. Chová sa takto.
Keď sa stlačí a drží tlačítko dlhšie ako 1,5s zapne sa led. Keď sa tlačítko stlačí čo i len na chvíľu zhasne led.

Ale chcel by som aby sa to správať takto:
Keď sa stlačí a drží tlačítko dlhšie ako 1,5s zapne sa led. Keď sa stlačí a drží tlačítko dlhšie ako 1,5s zhasne led.

Uživatelský avatar
kiRRow
Příspěvky: 1169
Registrován: 07 kvě 2019, 07:03
Reputation: 0
Bydliště: Opava

Re: Elektro zámok

Příspěvek od kiRRow » 10 čer 2020, 21:50

Omlouvám se předem.

Ale úplně super věc. Neumět programovat, tak přijít na fórum, kde to někdo za mě spíchne. Ne že bych si něco nechal vysvětlit, pochopit princip ... radši stím seknu a budu doufat, že to někomu bude líto a udělá to za mě. Super práce.

Opravdu se omlouvám za svou nezvdořilost.

Sperhak
Příspěvky: 46
Registrován: 22 čer 2018, 19:49
Reputation: 0

Re: Elektro zámok

Příspěvek od Sperhak » 11 čer 2020, 08:42

Ako som písal strávil som nad tým 3 hodiny a nepodarilo sa. Nemôžem tráviť tak dlhý čas nad jedným tlačitkom sú ďalšie veci a dôležitejšie v tomto projekte ktoré teraz robím.

KamilV
Příspěvky: 479
Registrován: 03 dub 2018, 15:27
Reputation: 0
Bydliště: Olomouc

Re: Elektro zámok

Příspěvek od KamilV » 11 čer 2020, 10:04

Pak doporučuji změnit odvětví, zaseknout se na něčem v programování na několik hodin je docela běžné...

Samozřejmě Ti přeji, aby ses na těch důležitějších věcech nezasekl, ale trochu se dá očekávat, že když se na několik hodin zasekneš u tlačítka, u důležitějších a náročnějších věcí to může být ještě horší. Tak jen abys s tím počítal.

Ale pomoci se zde dovoláš, to se zase neboj ;)

Axamith
Příspěvky: 533
Registrován: 09 srp 2017, 08:17
Reputation: 0
Kontaktovat uživatele:

Re: Elektro zámok

Příspěvek od Axamith » 11 čer 2020, 11:15

Někdy jsem nad problémem strávil i několik odpolední (řádově složitějších než je tlačítko). O tom prostě programování je, když to chceš pochopit, tak tomu musíš věnovat čas.

Sperhak
Příspěvky: 46
Registrován: 22 čer 2018, 19:49
Reputation: 0

Re: Elektro zámok

Příspěvek od Sperhak » 11 čer 2020, 19:04

Martinius dakujem za pomoc. Ostatným dakujem za moralistické rady aj ked som o ne nežiadal. Možno by ste si mali založiť nove forum a stranky napr moralisti.sk ,aby ste to tu zbytočne nespamovali.

Uživatelský avatar
pavel1tu
Příspěvky: 2054
Registrován: 26 říj 2017, 08:28
Reputation: 0
Bydliště: Trutnov
Kontaktovat uživatele:

Re: Elektro zámok

Příspěvek od pavel1tu » 11 čer 2020, 20:01

Sperhak píše:
11 čer 2020, 19:04
Martinius dakujem za pomoc. Ostatným dakujem za moralistické rady aj ked som o ne nežiadal. Možno by ste si mali založiť nove forum a stranky napr moralisti.sk ,aby ste to tu zbytočne nespamovali.
Já bych ti dal BAN a je to.
Příště to nedávej do "pomoc s projekty" ale "Nabídka práce", tady je zájmové forum o programování a většinou má každý radost že něco pochopil a funguje mu to hlavně jeho zásluhou.
Doufám že pokud to bylo k maturitě, že tě vyhoděj ;)

PS: ani nedoufej, že ti tu někdo něco uvěří o "projektu" když nejsi ochoten/schopen pochopit jak naprogramovat tlačítko, děcka z kroužku se dost smály (8-15 let)
UNO, NANO, Mikro, PRO mini, DUE, ESP32S2, RPi PICO
Pavel1TU
"Správně napsaný kod lze číst jako knihu"

Sperhak
Příspěvky: 46
Registrován: 22 čer 2018, 19:49
Reputation: 0

Re: Elektro zámok

Příspěvek od Sperhak » 11 čer 2020, 22:38

Neboj sa k maturite to nieje a k tomu že mi praješ všetko najhoršie ti napíšem len, kto druhému jamu kope sám do nej spadne. (To majú tie deti z krúžku dobrý vzor) Ban by ste si zaslúžili vy, za to že tu len moralizujete a nepomôžete, teda zo začiatku sa mi pár z vás snažilo pomôcť, ale potom sa to nejak zvrhlo.
Neboj sa tlačítko viem ako funguje aj ako ho čítať, len s touto požiadavkou si neviem rady.
Ako hovoríš potešilo by ma keby sa mi to podarí no keď nie a s vašou pomocou očividne nie,(až na pár výnimiek) tak použijem kód z úplne prvého príspevku a fungovať to bude aj ked s malým neduhom s ktorým sa naučím žiť.

Neviem či doma nemáte čo robiť, ale namiesto toho že ma tu len hejtujete ste mi to už mohli napísať :D :D

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 9 hostů