Světelný had - prosím POMOC

Wiring, C++, C, Java, ...
Pravidla fóra
Toto subfórum slouží k řešení obecných otázek kolem programování (konstrukce, knihovny, alokace paměti, ...)
medvidek180
Příspěvky: 25
Registrován: 18 úno 2018, 19:59

Re: Světelný had - prosím POMOC

Příspěvek od medvidek180 » 20 úno 2018, 20:35

Opět moc, moc díky, snad to ještě v noci zkusím, ale hned jak to vyzkouším, tak dám vědě co a jak.....jen zběžně jsem na to koukl a nemělo by tam všude být Stav vystupu?? namísto Stav Vytupu?? ale nevím, tomu programu v tuto chvíli nerozumí, ale zkusím. Moc, moc díky. M.

petan
Příspěvky: 358
Registrován: 23 črc 2017, 10:19
Kontaktovat uživatele:

Re: Světelný had - prosím POMOC

Příspěvek od petan » 20 úno 2018, 21:49

Jo, mělo. Překlep... Ale protože to je všude stejně blbě, tak to nemá žádnej vliv. Ale můžeš to přepsat.
Psal jsem to ve VisualStudiu. Tak jsem se poprvý přepsal a pak jsem to už jen kopíroval dál.

medvidek180
Příspěvky: 25
Registrován: 18 úno 2018, 19:59

Re: Světelný had - prosím POMOC

Příspěvek od medvidek180 » 21 úno 2018, 02:10

a co přesně a v jakém tvaru tam mám přesat???

petan
Příspěvky: 358
Registrován: 23 črc 2017, 10:19
Kontaktovat uživatele:

Re: Světelný had - prosím POMOC

Příspěvek od petan » 21 úno 2018, 06:23

Všechny "stavVytupu" přepsat na "stavVystupu". Ale jak říkám. Na funkci to nemá žádný vliv.

Mrkni na tento článek: https://www.mylms.cz/text-arduino-a-visual-studio/ Můžeš místo Arduino IDE používat VisualStudio. Kód se v tom píše daleko líp. Hlavně přejmenování proměnné v celém programu je otázka jednoho kliknutí.

AstroMiK
Příspěvky: 649
Registrován: 08 pro 2017, 19:05

Re: Světelný had - prosím POMOC

Příspěvek od AstroMiK » 21 úno 2018, 09:05

Pozor na piny A6 a A7.
Jsou to výhradně analogové vstupy a není možné na nich použít funkci digitalRead().
Nemají dokonce ani vnitřní Pull-Upy, takže když je nutné ty piny využít pro čtení tlačítek, musí se ten Pull-Up připojit zvenku a využít funkci analogRead().
Podle naměřeného napětí se pak rozhodne, jestli je tlačítko sepnuté, nebo rozepnuté.

Příklad nefunkčního kódu:

Kód: Vybrat vše

void setup()
  {
    Serial.begin(9600);
    pinMode(A6, INPUT_PULLUP);   // je jedno co tu bude, stejne to na funkci pinu nema vliv
  }

void loop()
  {
    Serial.println (digitalRead(A6));   // vraci stale 0, nezavisle na stavu pinu
    delay(100);
  }

petan
Příspěvky: 358
Registrován: 23 črc 2017, 10:19
Kontaktovat uživatele:

Re: Světelný had - prosím POMOC

Příspěvek od petan » 21 úno 2018, 12:47

Aha, tak to jsem ani nevěděl...
Ovšem, jak jsi psal, šlo by to řešit jednoduchou úpravou kódu.

Tam, kde je kód (jenom tuto část)

Kód: Vybrat vše

digitalRead(PROG4)
nahradit kódem

Kód: Vybrat vše

(analogRead(PROG4) > 512)
A pak ještě kód

Kód: Vybrat vše

opakovatAnimaci = digitalRead(PROG5); //pokud je true, bude se animace opakovat stále dokola
nahradit

Kód: Vybrat vše

if (analogRead(PROG5) > 512){
	opakovatAnimaci = true;
}
else{
	opakovatAnimaci = false;
}
Snad by to mělo být OK. A nebo vstupy nahradit jinými, digitálními.

U vstupů jsem počítal s interními pull-down rezistory.

medvidek180
Příspěvky: 25
Registrován: 18 úno 2018, 19:59

Re: Světelný had - prosím POMOC

Příspěvek od medvidek180 » 22 úno 2018, 01:06

Moc děkuji...jen jsem se k tomu stále nedostal, ale určitě se budu ptát a referovat, co to dělá.....je to pro mě určitě na celej den práce, abych si taky zbastlil tolik ledek a tlačítek. Moc děkuji a dám určitě vědět, jak se to nějak pohne. Michal

medvidek180
Příspěvky: 25
Registrován: 18 úno 2018, 19:59

Re: Světelný had - prosím POMOC

Příspěvek od medvidek180 » 22 úno 2018, 01:08

Ještě mě napadlo, jestli je to tak, že první tlačítko ovládá prvních 5 výstupů a to druhé zbylých 7?? Snad jo. M.

medvidek180
Příspěvky: 25
Registrován: 18 úno 2018, 19:59

Re: Světelný had - prosím POMOC

Příspěvek od medvidek180 » 22 úno 2018, 01:15

nevím, co jsou pul-down rezistory

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

Re: Světelný had - prosím POMOC

Příspěvek od Axamith » 22 úno 2018, 07:19

Tady je to popsáno. Jde o to, že rezistor udržuje požadovanou log. úroveň, vstup nemůže jen tak viset ve vzduchu.

http://www.vsvadbik.cz/products/pull-up ... -rezistor/
https://arduino.cz/arduino-zaklady-tlacitko/

Odpovědět

Kdo je online

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