Analóg bemenet Arduino-val
Egy analóg jel tetszőleges számú értéket vehet fel, ellentétben a digitális jelekkel, amelyeknek csak két állapota van: Magas vagy Alacsony. Az analóg bemeneteknél teljesen ellentétes a helyzet. Az Arduino bármilyen analóg eszközről vagy forrásról képes analóg bemeneteket fogadni, majd digitális jelekké alakítani egy 10 bites analóg-digitális konverter segítségével.
Az Arduino összesen 14 bemeneti kimeneti lábak, amelyekből 6 csapok a A0 nak nek A5 analóg tűk. Az ezzel a 6 érintkezővel leolvasott bemeneti feszültség leképezhető, miután az ADC-ről digitális jelre vált 0 és 1023 diszkrét analóg szint között, ami azt jelenti, hogy a 0V bemeneti analóg érték 0-ra lesz leképezve digitálisban, az 5V analóg értéke pedig 1023 lesz. ADC-n keresztüli átalakítás után.
Az analóg bemenetek használata
A változó bemenetek az Arduino analóg kategóriába tartoznak. A legtöbb bemeneti érték analóg érzékelőktől, hőmérséklet-érzékelőktől és potenciométerektől származik. Ezeket az eszközöket analóg eszközöknek nevezzük. Hasonlóképpen, az érzékelők adatainak kiolvasásához az Arduino analóg bemeneti érintkezőit használjuk analógRead() függvény, amely 0 és 1023 közötti értékeket ad.
analógRead()
Az analóg jelek fogadásához az AnaRead() függvényt használjuk az Arduino programozásban. Ezeket a tűket úgy tervezték, hogy analóg eszközökről fogadjanak bemenetet.
Szintaxis
Az analogRead() függvény szintaxisa a következő:
Paraméterek
Az analogRead() csak egy paramétert vesz fel, amely a pinkód . Leírja annak a bemeneti lábnak a nevét, ahol az analóg adatokat kell olvasni. 10 bit esetén az analóg lábak olvasását adja vissza, 0-1023 között van korlátozva, és az általa használt adattípus int .
Deszkák | Analóg Pins | Az ADC maximális felbontása |
---|---|---|
Egy | A0-tól A5-ig | 10 bit |
Nano | A0-tól A7-ig | 10 bit |
Mega | A0-tól A14-ig | 10 bit |
Az Arduino Uno 6 analóg bemenettel rendelkezik, de ezek a tűk nem használhatók egyszerre, mivel ez a 6 érintkező egyetlen ADC-hez van csatlakoztatva az Arduino belsejében multiplexer (MUX) segítségével. Az Arduino nem képes minden bemenetet ugyanabban a pillanatban beolvasni, de lehetséges az analóg adatokat az összes érintkezőn keresztül olvasni, ha kis késleltetést ad, vagy sorban olvassa őket.
Használhatjuk az analóg tűket digitálisként?
Igen , az analóg érintkezők digitális bemeneti kimeneti érintkezőkként használhatók. Az álnevek technikával bármilyen analóg bemeneti érintkezőt beállíthatunk digitális kimenetként. A kód szintaxisa így fog kinézni:
pinMode ( A0, KIMENET ) ;digitalWrite ( A0, MAGAS ) ;
Itt digitális kimenetként leképeztük az A0 analóg tűt, és az értékét High-ra állítottuk.
Következtetés
Az analóg érzékelők Arduino kártyákkal való összekapcsolásához analóg bemeneteket használunk. Az Arduino kártyák különböző konfigurációkban kaphatók, és mindegyik kártyán más-más számú analóg érintkező van. Az Arduino Uno 6 analóg bemenettel rendelkezik. Az Arduino Nano 8, míg a Mega 16 analóg bemenettel rendelkezik.