Close

Zbyšek Voda

Vytvořené odpovědi

Aktuálně je na stránce zobrazeno 15 příspěvků - 181. až 195. (celkem z 203)
  • Autor
    Příspěvky
  • odpověď na: Udržení programu v Arduinu #3521
    Zbyšek Voda
    Správce

    Dobrý den.

    To by mělo být standardní chování Arduina.
    Po odpojení a připojení napájení dojde k restartu programu, ale není potřeba ho znovu nahrávat.

    odpověď na: E-book #3520
    Zbyšek Voda
    Správce

    Dobrý den,

    je to spíše ukázka, jak se dají pole deklarovat.

    Ale zrovna u příkladu
    char jmeno[7] = "arduino";
    bych ukončovací znak nedával, protože z povahy pole víme, že bude mít 7 prvků.

    U char jmeno[] = "arduino"; už bych s ukončovacím znakem váhal.
    Je to ale spíše otázka toho, jakým způsobem je pole použito dále v kódu, takže bych to u tohoto příkladu neřešil..

    odpověď na: Knihovna #3484
    Zbyšek Voda
    Správce

    Tady je o tom celý tutoriál: http://www.arduino.cc/en/Hacking/LibraryTutorial

    odpověď na: Arduino Mega – jaké použít piny #3278
    Zbyšek Voda
    Správce

    Já myslím, že u těch relé je jedno, do jakých pinů je připojíte. U teploměrů závisí na tom, jakou technologii přenosu dat používají.

    odpověď na: jak na display? #3134
    Zbyšek Voda
    Správce
    odpověď na: sinusový signál +-200mV #2990
    Zbyšek Voda
    Správce

    Dobrý den,

    to jenom s Arduinem nepůjde. I funkce analogWrite() totiž generuje PWM signál, což je taky digitál. Umí na pinu poslat buď 0, nebo 5V. Nic mezi.

    Budete tedy potřebovat nějaký HW, například odporový žebřík.

    odpověď na: identifikace proměnných #2977
    Zbyšek Voda
    Správce

    Dobrý den,

    když pošlete po sériové lince například:

    Serial.println(hodnotaA)
    Serial.println(hodnotaB) 

    tak zařízení, které tyto hodnoty čte nemá šanci poznat, že se jednalo ho proměnné hodnotaA a hodnotaB. Přijatá data jsou to pro něj jenom série nul a jedniček (resp. bytů).

    Při sériové komunikaci se většinou postupuje tak, že za číslem vždy následuje nějaký nečíselný znak. Na tento znak čeká program přijímající data. Podle toho pozná, že už číslo přišlo celé a z přijatých bytů poté poskládá přijaté číslo.

    Druhou (a jednodušší) možností je použití Serial.parseInt(). Z Arduina, které data odesílá se pošle např.

    Serial.print(hodnotaA);
    Serial.print('a')
    Serial.print(hodnotaB);
    Serial.print('a')

    Kdy na místě ‚a‘ může být libovolný nečíselný znak.
    Funkce Serial.parseInt() čeká, dokud neobdrží nějaký nečíselný znak a po jeho přijetí poskládá číslo z bytů přijatých před ním. Tedy v programu Arduina, které data přijímá by mělo být něco jako:

    int hodnotaA = Serial.parseInt()
    int hodnotaB = Serial.parseInt()

    Každopádně bych ale asi zvážil, jestli je opravdu vhodné použití sériové linky v případě, když budete mít propojeno více Arduin než dvě. Někdy to nemusí vadit, ale mohlo by to dělat problémy. Možná by bylo lepší použít sběrnici i2c. Ta umožňuje přímé adresování jednotlivých desek.

    odpověď na: Arduino bez ISP #2903
    Zbyšek Voda
    Správce

    Aha. Nemyslím ale, že je to něco, čeho byste se měl obávat 🙂

    odpověď na: Arduino bez ISP #2901
    Zbyšek Voda
    Správce

    Tak to nevím, co by to mohlo být. Kde to psali?

    odpověď na: Arduino bez ISP #2897
    Zbyšek Voda
    Správce

    Popravdě moc nevím, co tím „bez ISP“ myslíte.

    Pokud by to bylo bez ICSP, tak by se jednalo o to, že na desce není připájená programovací hlavice, ale takhle nevím.

    Myslím, že se jako začátečník nemusíte ničeho obávat 🙂

    odpověď na: For a proměnná #2896
    Zbyšek Voda
    Správce

    Nejsem si jistý, jestli to vůbec jde.
    Každopádně to určitě půjde udělat přes pole.

    odpověď na: Zasílání emailu #2884
    Zbyšek Voda
    Správce

    Co mě tak narychlo napadá…

    Na Arduinu bude program, který se při překročení dané teploty na čidle pokusí připojit na adresu ve tvaru např.:

    www.server.cz/mail.php?cidlo=cislo_cidla&teplota=namerena_teplota

    Na dané adrese pak musí být soubor mail.php, který bude číst data z URL pomocí GET (to jsou ty údaje za otazníkem). Ty pak jen vezme a například pomocí funkce mail() je odešle.

    odpověď na: RHT 03 – měření teploty a vlhkosti vzduchu #2719
    Zbyšek Voda
    Správce

    FB buď Zbyšek Voda, nebo stačí napsat na stránku Arduino.cz na FB

    odpověď na: RHT 03 – měření teploty a vlhkosti vzduchu #2717
    Zbyšek Voda
    Správce

    Problém bude v tom, že tak, jak máte program napsaný je opravdu správně chování, že při zmáčknutí tlačítka se relé vypne!

     if(buttonState == HIGH) { //!! tato funkce relé vypíná!
        digitalWrite(relePin1, LOW);
    }
    else{
        digitalWrite(relePin1, HIGH);
    } 

    Pokud chcete, aby stejný stav jako má relé mělo i tlačítko, musíte prohodit LOW a HIGH:

     if(buttonState == HIGH) {
        digitalWrite(relePin1, HIGH);
    }
    else{
        digitalWrite(relePin1, LOW);
    } 

    Dva IFy na stejné úrovni se rozhodně nedají brát jako „hlavní“ a „podřadný“. „Podřadnosti“ dosáhnete až jejich zanořováním 🙂

    odpověď na: RHT 03 – měření teploty a vlhkosti vzduchu #2702
    Zbyšek Voda
    Správce

    To asi bude tim, ze readTemperature je funkce volana na objektu dht1. A funkce potrebuji mit za sebou zavorky (i kdyz treba prazdne). Spravny zapis by tedy byl dht1.readTemperature().

Aktuálně je na stránce zobrazeno 15 příspěvků - 181. až 195. (celkem z 203)