Delay () tartományon kívüli számmal

Processing/Wiring (illetve C) nyelvű programozási fogások, tippek. (AVR-Duino, Arduino, EthDuino, Diecimila, Severino, Nano, LilyPad)
Válasz küldése
pekolaszlo
Újonc
Újonc
Hozzászólások: 6
Csatlakozott: 2016. október 2. vasárnap, 21:15

Delay () tartományon kívüli számmal

Hozzászólás Szerző: pekolaszlo »

Had kezdjem egy privát kérdéssel amelyről szeretném ha szólna ez a rész.
Mi történik akkor ha a delay() függvényben
Amelyben maximum 65000 körüli maximum érték írható ,ennél kicsivel vagy sokkal többet
Írunk ???
A gyakorlatban nem igazán tudtam kiértékelni
Mi az igazi válasz erre kérlek segítsetek ebben
Köszönöm
Avatar
csegebiga
Chipgyilok
Hozzászólások: 288
Csatlakozott: 2015. március 27. péntek, 21:27

Re: Kezdők kérdései

Hozzászólás Szerző: csegebiga »

olvasd el a téged érdeklő dolgokat plííííz!

delay()
https://www.arduino.cc/en/Reference/Delay
Syntax
delay(ms)
Parameters
ms: the number of milliseconds to pause (unsigned long)

unsigned long
https://www.arduino.cc/en/Reference/UnsignedLong
Unsigned long variables are extended size variables for number storage, and store 32 bits (4 bytes). Unlike standard longs unsigned longs won't store negative numbers, making their range from 0 to 4,294,967,295 (2^32 - 1).
tehát 65535 nél nagyobb értéknél sem lesz probléma, ha nem integer típusú változóval paraméterezed
pekolaszlo
Újonc
Újonc
Hozzászólások: 6
Csatlakozott: 2016. október 2. vasárnap, 21:15

Re: Kezdők kérdései

Hozzászólás Szerző: pekolaszlo »

Nagyon köszönöm, elnézést az amatörségért
pekolaszlo
Újonc
Újonc
Hozzászólások: 6
Csatlakozott: 2016. október 2. vasárnap, 21:15

Re: Kezdők kérdései

Hozzászólás Szerző: pekolaszlo »

De ha sima számot írok be nem pedig egy
Előre definiált nevet akkor ez hogyan módosul?
A következőképpen néz ki a sorom:
delay(valami*60);
Ahol a valami integer változó és egy analóg bemeneten beolvasott értek amit potméterrel állítok,de az időzítési nem üzemazerűen változik
Hanem hol több hol kevesebb ugyanazon potméter állásnál.
Avatar
csegebiga
Chipgyilok
Hozzászólások: 288
Csatlakozott: 2015. március 27. péntek, 21:27

Re: Kezdők kérdései

Hozzászólás Szerző: csegebiga »

szerintem próbáld ki!
ha ennyire érdekel a valami, a valami*60, írasd ki a soros monitorra az értéküket
látni fogod, hogy a bejövő jeled mennyire "zajos", hogy ugrál fel-le a szám vége
és a valami tipusdefiniciótól függóen hogyan viselkedik a valami*60

http://arduino.cc/en/Reference/VariableDeclaration
https://www.arduino.cc/en/Reference/Byte
https://www.arduino.cc/en/Reference/Int
https://www.arduino.cc/en/Reference/UnsignedInt
és így tovább az unsigned long-ig
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

Re: Kezdők kérdései

Hozzászólás Szerző: Robert »

A 0...65535-nél nagyobbat adsz meg, akkor:
1, átemeled 2-es számrendszerbe:
xxxx.xxxx.xxxx.xxxx.yyyy.yyyy.yyyy.yyyy
2, Ebből az alsó 16 jegyet veszed, a felsőt eldobod.
Ennyi lesz a tény számértéke.
http://www.tavir.hu - a gazda :)
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

Re: Delay () tartományon kívüli számmal

Hozzászólás Szerző: Robert »

Pontosítás: A korai arduinoban 0...65535 volt az értékhatára. Ez változott long-ra.
http://www.tavir.hu - a gazda :)
Avatar
csegebiga
Chipgyilok
Hozzászólások: 288
Csatlakozott: 2015. március 27. péntek, 21:27

Re: Delay () tartományon kívüli számmal

Hozzászólás Szerző: csegebiga »

tehát a valami*60 a valami típusát kapja
ha uint tipusu volt, akkor uint is marad.
viszont az analog input -60 az nem lóghat ki az uint 0-65535-ig terjedő értékkészletéből.
csak ha int nek adnál 0-1023 közötti érték*60 értéket, az már ugrálhat rendesen negatív(-32767)-pozitív(+32768) értékek között.
anno a Pascal volt nagyon rigolyás a típus definíciókra. belénk is verték rendesen, hogy ne legyünk pongyolák e téren. :)

mit csinál egy ilyen?

Kód: Egész kijelölése

  int n=-32000;
  delay(n); 

integer out of range? type missmatch? lefut?
pekolaszlo
Újonc
Újonc
Hozzászólások: 6
Csatlakozott: 2016. október 2. vasárnap, 21:15

Re: Delay () tartományon kívüli számmal

Hozzászólás Szerző: pekolaszlo »

Nagyon köszönöm a segítséget igyekszem mihamarabb kipróbálni,és visszajelzek hátha
Érdekel valakit :)
Válasz küldése