Portkezelő utasítások - Arduino és programozása

Keresés a weboldalon

Programozási alapismeretek
Tartalomhoz ugrás

Főmenü:

Portkezelő utasítások

Arduino programozása > Arduino programozása
pinMode(pin, [INPUT, OUTPUT, INPUT_PULLUP]);
Feladata: adott "pin" számú port irányának (bemenet, kimenet, bemenet_felhúzóellenállással) a beállítása.
Példa:  pinMode(13, OUTPUT); //13-s port kimenetként való beállítása
Digitális port kezelési utasításai (Megánál, 0-53 portok)
digitalWrite(pin, [LOW, HIGH]);
Feladata: adott "pin" számú digitális port kimenetének ALACSONY, vagy MAGAS szintűre állítása (pl. LED vezérlés).
Példa:  digitalWrite(13, HIGH); //13-s digitális kimeneti port kimenetének MAGAS szintre állítása
digitalRead(pin);
Feladata: adott "pin" számú digitális port logikai értékének (0, vagy 1) beolvasása (pl. nyomogomb állapot beolvasás).
Példa:  digitalRead(13); //13-s digitális bemeneti port logikai szintjének beolvasása
Analóg port kezelési utasításai (Megánál A0-A15 portok)
analogRead(pin);
Feladata: adott "pin" számú analóg port 0 és 1023 közti értékének a beolvasása. Például, adott portra kapcsolt feszültség értékét viszonyítja a referencia feszültséghez, alapértelmezetten a tápfeszültséghez (módosítható a referencia érték). A helyes leolvasás érdekében, a portra kapcsolt feszültség nem lehet nagyobb a referencia értéknél! A referenciaérték fölötti értékekre 1023-s értéket ad, de túl nagy feszültség tönkre is teheti a chip-et! Referenciaértéknél nagyobb feszültség mérési igénye esetén, nekünk kell gondoskodnunk a feszültség referenciaérték alá történő osztásáról! Példa a beolvasási érték értelmezésére.
Kapcsoljuk egy pótméter egyik szélső lábát +5V-ra, a másik szélsőt GND-re, a mozgó csúszkát az A0-s portra! A potméter adott állásánál a port 314-t olvas be. Ekkor a csúszkán mérhető feszültség 5/1024*314=1,53V. Hiba=+- 5/1024=+- 4,88 mV.
Példa:  analogRead(A0); //0-s analóg bemeneti port analóg értékének (0-1023) a beolvasása
analogWrite(pin, value);
Feladata: Az utasítás nem hagyományos értelemben vett analóg jelet szolgáltat, azaz nem a jel amplitudója változik, hanem egy digitális impulzus kitöltési tényezője (PWM=pulzusszélesség moduláció), melyből akár közvetlenül is megvalósítható analóg jelllel kiváltott hatás, pl. LED fényerő szabályozás. Kiegészítő áramköri elemekkel viszont létrehozható 256 lépcsős analóg jel is. E tulajdonsága miatt egy digitális port is alkalmas, ilyen kvázi analóg jel szolgáltatására.  
Példa:  analoglWrite(13, 127); //13-s digitális kimeneti port kimenetén 50%-s kitöltési tényezőjű négyszögjel jelenik meg.
Vissza a tartalomhoz | Vissza a főmenühöz