Pomoc s kodom

C,C++,C#

Moderátori: psichac, Moderátori

peto2301
Okoloidúci
Okoloidúci
Príspevky: 33
Dátum registrácie: 18 Feb 2009, 00:00
Bydlisko: PETROVCE 142
Kontaktovať používateľa:

Pomoc s kodom

Príspevok od používateľa peto2301 » 26 Feb 2016, 20:37

zdravim, potreoval by som helfnut s mensim problemom, riadim dc motor cez h mostik a za pomoci dvoch tlacidiel menim smer otacania a pomocou trimra si regulujem rychlost otacania to funguje v pohode ale chcem to dat vypisat aj na lcd cize ak stalcim tl 1 motor sa otaca v smere hodinovych ruciek a to by som chcel vypisat aj na lcd ak stlacim tl 2 vypise iba v protismere a ak nie je stlacene ani jedno motor stoji ale ak to dam vapisovat vypisuje vsetko naraz skusal som to cez if aj cez do while syklus v prilohe je kod tak bol by som vdacny za akukolvek radu ako to opravit aby to fungovalo vdaka.
Prílohy
arduino.txt
(1023 Bajtov) 74 stiahnutí
0

alidedko
Ultimate člen
Ultimate člen
Príspevky: 3963
Dátum registrácie: 04 Feb 2013, 22:04
Bydlisko: U alibabky v Poprade
Vek: 32

Re: Pomoc s kodom

Príspevok od používateľa alidedko » 26 Feb 2016, 20:47

Pozrel som to narychlo cez telefon.

Tie podmienky si sprav cez IF ... ELSE IF ... ELSE IF ... ELSE {lcd print (" ")}

Snad ma chapes. Ak nie je splneny ani jeden IF, vypis si prazdne znaky.
0
Motto: Nikto nie je tak velky, aby sa nevosiel do truhly.

peto2301
Okoloidúci
Okoloidúci
Príspevky: 33
Dátum registrácie: 18 Feb 2009, 00:00
Bydlisko: PETROVCE 142
Kontaktovať používateľa:

Re: Pomoc s kodom

Príspevok od používateľa peto2301 » 26 Feb 2016, 20:48

dikes idem skusit
0

stanleyv
Pokročilý člen
Pokročilý člen
Príspevky: 738
Dátum registrácie: 14 Máj 2007, 00:00
Bydlisko: Trnava
Vek: 51

Re: Pomoc s kodom

Príspevok od používateľa stanleyv » 26 Feb 2016, 21:15

Kód: Vybrať všetko

if (digitalRead(A1) == LOW)
  {
    val = analogRead(A0);
    hore();
    lcd.setCursor(0,0);
    lcd.print(" hore ");
    
                                   
  }
  if (digitalRead(A2) == LOW)
  {
    val = analogRead(A0);
    dole();
    lcd.setCursor(0,0);
    lcd.print(" dole ");
                            
  }
  if ((digitalRead(A1) != LOW) && (digitalRead(A2) != LOW))
  
    motorStop();
    lcd.setCursor(0,5);
    lcd.print(" STOP ");
}
Ak máš stlačené A1, vypíše ti na pozíciu 0,0

Kód: Vybrať všetko

 dole 
Ak máš stlačené A2, vypíše ti na pozíciu 0,0

Kód: Vybrať všetko

 hore 
Ak nemáš stlačené A1 ani A2 vypíše ti na pozíciu 0,5

Kód: Vybrať všetko

 STOP 
Dlžka textu sedí, takže by to malo prepisovať, ale pri STOP máš inú pozíciu, takže ti neprepíše predchádzajúci text, ale napíše ti to za neho. Inak tam nemusíš používať IF.....ELSE IF.....ELSE IF.......
0
Ak nakupuješ často na ebay, Banggood, Aliexpres a pod., tu sa zaregistruj a môžeš ušetriť:
https://www.bonusway.cz?r=6361768

„Jediná druhá šance, kterou máme, je udělat stejnou chybu podruhé.“
David Mamet

pajkovac_Sam
Stály člen
Stály člen
Príspevky: 105
Dátum registrácie: 26 Sep 2014, 11:57
Bydlisko: Lokátor: KN08TQ

Re: Pomoc s kodom

Príspevok od používateľa pajkovac_Sam » 26 Feb 2016, 23:07

Ahoj,
som rád, že sa niekto zaoberá s aj s motorčekmi.

Nevypisuje ti to stále "dole STOP", alebo "hore STOP"? Podľa toho, čo si mal zapnuté na posledy.
Je veľa hodín a možno sa aj mýlim, no stanleyv má pravdu s tou pozíciou. To STOP sa neprepíše. A ja som si všimol aj, že tam nie sú zátvorky { } v poslednom IFe. Teda pokiaľ budeš mať na A1 a A2 LOW, tak sa urobí motorStop(), ale výpis na LCD bude v každej slučke loop.
0

peto2301
Okoloidúci
Okoloidúci
Príspevky: 33
Dátum registrácie: 18 Feb 2009, 00:00
Bydlisko: PETROVCE 142
Kontaktovať používateľa:

Re: Pomoc s kodom

Príspevok od používateľa peto2301 » 26 Feb 2016, 23:24

ano anio presne toto to robi aj ked dam stop vypisat na poziciu 0 0 neprepise ale iba vsetko to spoji dokopy ze nieje vidno ani hore ani dole a ani stop preto som dal stop na 0 5 poziciu a tak aspon vypisuje hore alebo dole podla stlacneho tlacidla
0

stanleyv
Pokročilý člen
Pokročilý člen
Príspevky: 738
Dátum registrácie: 14 Máj 2007, 00:00
Bydlisko: Trnava
Vek: 51

Re: Pomoc s kodom

Príspevok od používateľa stanleyv » 26 Feb 2016, 23:33

peto2301 máš pravdu, tie zátvorky som si nevšimol, preto som skopíroval aj tú poslednú zátvorku. Má to byť takto :

Kód: Vybrať všetko

     if ((digitalRead(A1) != LOW) && (digitalRead(A2) != LOW))
     {
         motorStop();
         lcd.setCursor(0,5);
         lcd.print(" STOP ");
     }
}
0
Ak nakupuješ často na ebay, Banggood, Aliexpres a pod., tu sa zaregistruj a môžeš ušetriť:
https://www.bonusway.cz?r=6361768

„Jediná druhá šance, kterou máme, je udělat stejnou chybu podruhé.“
David Mamet

Napísať odpoveď
  • Podobné témy
    Odpovedí
    Zobrazení
    Posledný príspevok