Leírás
Beolvassa az értéket a megadott analóg lábról. Az Arduino alaplapok többcsatornás, 10 bites analóg-digitális konverterrel rendelkeznek.
Úgy működik, hogy az analóg lábra kapcsolt feszültséget (0 volt és 3,3 vgy 5 volt közötti érték) megméri és ebből egy 0 és 1023 közé eső egész számot kapunk. Például egy Arduino UNO alaplap esetében ez a felbontás: 5 volt / 1024 egység azaz 0,0049 volt (4,9 mV) egységenként. Néhány gyakrabban használt Arduino alaplap analóg bemenetének a tulajdonságait az alábbi táblázat szemlélteti. A bemeneti tartomány megváltoztatható az analogReference() segítségével, míg a felbontás (csak a Zero, Due és MKR alaplapoknál) megváltoztatható az analogReadResolution() parancs használatával. Az ATmega processzoros alaplapokon (UNO, Nano, Mini, Mega) körülbelül 100 mikroszekundum (0,0001 s) szükséges az analóg bemenet olvasására, tehát a maximális kiolvasási sebesség másodpercenként körülbelül 10 000 alkalom.
Alaplap | Maximális feszültség | Használható lábak | Maximális felbontás |
UNO | 5 Volt | A0-A5 | 10 bit |
Mini, Nano | 5 Volt | A0-A7 | 10 bit |
Mega, Mega2560, Mega ADK | 5 Volt | A0-A14 | 10 bit |
Micro | 5 Volt | A0-A11* | 10 bit |
Leonardo | 5 Volt | A0-A11* | 10 bit |
Zero | 3,3 Volt | A0-A5 | 12 bit** |
Due | 3,3 Volt | A0-A11 | 12 bit** |
MKR család | 3,3 Volt | A0-A6 | 12 bit** |
* Az A0-tól A5-ig az alaplapon van jelölve, az A6-tól A11-ig a 4., 6., 8., 9., 10. és 12. láb használható.
** Ezeknek az alaplapoknak az alapértelmezett analogRead() felbontása 10 bit, a kompatibilitás érdekében. A 12 bitesre való váltáshoz az analogReadResolution() parancsot kell használnia.
Szintaxis
analogRead(PIN)
paraméterek
pin: az olvasható analóg bemeneti láb neve (A0-tól A5-ig a legtöbb alaplapon, A0-tól A6-ig az MKR alaplapokon, A0-tól A7-ig a Mini-nél és a Nano-nál, A0-tól A15-ig a Mega esetében).
Eredmény
Az analóg érték kiolvasása az adott lábon. Ez az analóg-digitális átalakító felbontására korlátozódik (0-1023 10 bit vagy 0-4095 12 bit). Adattípus: int (egész).
Példaprogram
A kód kiolvassa és megjeleníti az analóg lábon mért feszültséget.
Megjegyzések és figyelmeztetések
Ha az analóg bemeneti láb nincs csatlakoztatva semmire, akkor a analogRead() által visszaadott érték számos tényező alapján ingadozik (pl. A többi analóg bemenet értékei, milyen közel van a kezed az alaplaphoz, stb.).