Dobrý den, Ahoj,
předem díky všem co píší spousty návodů a zapojení pro arduino, protože nám začátečníkům moc pomáháte se učit a příjemně trávit čas s pokusy.
Měl bych dotaz ohledně jednoho pokusu z knížky "Průvodce světem Arduina" kterou pomalu pročítám a zkouším.
V kapitole 15 - Příklad: Regulace jasu LED je tato poznámka:
"V programu si musíme dát pozor na hodnoty, se kterými funkce pracují. Z funkce analogRead() vychází hodnoty 0 až 1023, kdežto analogWrite() čeká na rozsah hodnot 0 až 255. Musíme tedy zajistit převod hodnot"
Moje otázka je, co by se stalo, když na tento převod při nějakém z pokusů zapomenu a nevydělím vystup na hodnotu 255. Poškodím nějakým způsobem arduino, nebo jen pokus nebude fungovat a nic se nestane?
Moc díky.
Přetečení funkce analogWrite, funkce map
Pravidla fóra
Toto subfórum slouží k řešení obecných otázek kolem programování (konstrukce, knihovny, alokace paměti, ...)
Toto subfórum slouží k řešení obecných otázek kolem programování (konstrukce, knihovny, alokace paměti, ...)
Re: Rubrika --> Začiatočníci
Zdravím.
Nic se nestane. Funkce bude pracovat od 0 do 255 a od 256 do 1023 bude svítit jako 255.
Pro tyto případy se používá funkce:
Tato funkce přepočítá danou hodnotu čísla v poměru rozsahů jednoho k poměru rozsahů druhého.
Nic se nestane. Funkce bude pracovat od 0 do 255 a od 256 do 1023 bude svítit jako 255.
Pro tyto případy se používá funkce:
Kód: Vybrat vše
y = map(x, 0, 1023, 0, 255);
Re: Rubrika --> Začiatočníci
Teď to nemám ne čem odzkoušet, ale jestli se nepletu, tak hodnota “přeteče”.
Takže když do analogWrite posílate postupne hodnoty 0-1023, tak se čtyřikrát zvýší jas z 0-255
Takže když do analogWrite posílate postupne hodnoty 0-1023, tak se čtyřikrát zvýší jas z 0-255
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 63 hostů