Arduino konstante

Arduino konstante

Konstante

Konstante su predefinirane varijable Arduino jezika.
Koristimo ih da bi programi bili lakši za čitanje.
Konstante klasificiramo u grupe.

Određivanje logičkih nivoa, true i false (Boolean Constants)

Postoje dvije konstante koje predstavljaju istinitu(true) ili lažnu(false) tvrdnju
u Arduino jeziku .

false
lažnu tvrdnju je lakše definirati.
laž(false) je definirana kao 0(nula)

true
obično kažemo da je istina(true) definirana kao 1, što je točno, ali
true ima širu definiciju.
U Boolean smislu svaki cijeli broj koji nije 0 je true.
Tak su brojevi -1,2,-200 u Boolean smislu svi definirani kao true
Treba primijetiti da se konstante true i false pišu malim slovima za
razliku od HIGH(VISOKO), LOW(NISKO),INPUT(ULAZ) i OUTPUT(IZLAZ) konstanti

Definiranje nivoa pin-a, HIGH(VISOKO) i LOW(NISKO)

Kada čitamo ili pišemo na digitalni pin postoje samo dvije moguće
vrijednost koje pin-u možemo dodjeliti ili ih sa pina možemo pročitati.

HIGH(VISOKO)

Značenje HIGH (u odnosu na pin) je nešto drugačiji ovisno o tome da li je pin
postavljen kao INPUT(ULAZ) ili OUTPUT(IZLAZ).
Kada je pin postavljen kao INPUT sa pinmode() funkcijom i čitan sa
digitalRead() funkcijom mikrokontroler će napon od 3V ili više prijaviti kao
HIGH stanje.
Pin može isto tako biti postavljen kao ulaz sa pinMode() funkcijom
i zatim ga možemo postaviti HIGH sa funkcijom digitalWrite() to će
uključiti unutarnji 20K ohma PULLUP otpornik(Povuci gore) koji će držati
ulazni pin na HIGH nivou sve dok sa vanjskim krugom ne povučemo taj pin na LOW nivo.
Jednako tako radi i INPUT_PULLUP
Kada je pin postavljen kao OUTPUT sa pinMode() i postavljen HIGH sa digitalWrite()
taj pin je postavljen na 5V.
U tom stanju može služiti kao izvor napajanje.
Možemo sa njime upaliti LED diodu koja je spojena u seriju sa otpornikom na masu
ili na drugi pin koji je postavljen kao izlaz a stanje mu je postavljeno na LOW.

LOW(NISKO)

Značenje LOW jednako tako ima različito značenje ovisno o tome da li je pin
postavljen na INPUT ili OUTPUT.
Kada je pin postavljen sa pinMode() postavljen kao INPUT i pročitan sa sa digitalRead()
mikrokontroler će prijaviti vrijednost LOW ako je napon 2V ili manje prisutan na
pin-u.
Kada je pin postavljen sa pinMode() postavljen kao OUTPUT
i pročitan sa sa digitalRead() pin je na 0V.
U tom stanju može provoditi struju kroz recimo otpornik spojen u seriju sa diodom koji su
na drugoj strani posjeni na 5V ili na drugi pin koji je postavljen kao izlaz i stanje mu je HIGH.

Postavljenje digitalnih pinova, INPUT,INPUT_PULLUP i OUTPUT

Digitalni pinovi se mogu koristiti kao INPUT(izlaz),INPUT_PULLUP(ulaz sa otpornikom) i kao OUTPUT(izlaz)
Promjenom pina sa funkcijom pinMode() mijenja se električno stanje pin-a.

Pinovi postavljeni kao INPUT
Arduino(Atmega) za pinove koji su postavljeni kao INPUT sa funkcijom
pinMode() se kaže da su u stanju viskoke impedancije.
Pinovi postavljeni kao INPUT za strujni krug kojeg uzorkuju
predstavljaju izuzetno male zahtjeve ekvivalentno seriji otpornika od 100Mohma
spojenoj ispred pina.
To ih čini korisnim za čitanje senzora, ali ne i za napajanje LED dioda.
Ako imate pin postavljen kao INPUT želite da tom pinu referenca bude masa,
često se to postiže sa pull-down (povuci dolje) otpornikom.

Pinovi postavljeni kao INPUT_PULLUP
Atmega čip na Arduinu ima interni pull-up otpornik(otpornik koji se
interno spaja na +5V) kojemu možemo pristupiti.
Ako vam je draže koristiti taj interni otpornik umjesto vanjskog otpornika
spojenog na 5V možete koristiti argument INPUT_PULLUP u funkciji pinMode()

Pinovi postavljeni kao izlazi
Za pinove postavljene kao OUTPUT sa pinMode() se kaže da su u stanju niske impedancije
To znaći da mogu pružiti dovoljnu količinu struje drugim strujnim krugovima.
Atmega pinovi mogu pružiti do 40mA struje.
To ih čini korisnim za napajanje LED dioda ali nekorisnima za čitanje senzora.
Pinovi postavljeni kao izlaz mogu biti oštećeni ako ih se kratko spoji na +5 ili na masu.
Količina struje koju Atmega pinovi mogu pružiti obično nije dovoljno da bi se upalio relej ili
da bi mogli direktno spojiti motore.

Leave a Reply