hu en es hu en en en hu hu de hu hu sk hu hu hu hu hu hu hu hu zh ru kn fr en ro en kn hu hu hu hu hu hu hu hu hu hu hu hu it zh ru hu kn kn fr en ru hu hu hu hu en hu en kn kn hu hu hu hu hu hu hu hu en
Most egy kicsit átnézzük az analóg bemenetek kezelését, ehhez nem kell más csak egy potenciaméter, néhány led és néhány ellenállás. Mint tudott az Arduino Uno hat analóg bemeneten képes fogadni a feldolgozandó analóg értékeket. A belső ADC (analóg-digitális konverter) 10 bites (0-1023, 1024 lehetséges érték) digitális jelé alakítja át az analóg jelet.
Azt, hogy ez a mintavételezés hányszor történik meg másodpercenként az mi állíthatjuk be.
első lépésként a 10kohmos potit kössük be:
egyik szélső lába → Uno 5V
másik szélső láb → GND
középső láb → A0, (analóg 0 pin)
Lássunk egy egyszerű példát:
int a = analogRead(A0);
a soros monitorra íratjuk ki az analóg bemenet digitális értékeit, ezt az analogRead() utasítás
segítségével érhetjük el ami beolvassa A0-s bemenet pillanatnyi értékét, ezt az értéket a bemenet
feszültség szintjének megfelelő digitális értéké alakítja át. Például: 0V – 0, 5V – 1023, 2.5V – 512.
Nézzünk egy másik példát, itt a beolvasott analóg jelet feldolgozzuk és egy led sor segítségével
5db led hozzá 270-330ohmos áramkorlátozó ellenállások,
Uno, plusz usb kábel,
A kapcsolásról: az 5db ledet rákötjük az ellenállásokon keresztül a 2-6 digitális kimenetekre.
A poti középső lába az A0-ra, a jobb oldali a +5V-re a bal a GND-re.
pinMode(i,OUTPUT);//beállítjuk kimenetnek 2-től 6-ig a pineket
analog = analogRead(A0);//analóg érték beolvasása analog változóba
digit = map(analog,0,1023,1,6);// át alakítjuk az 1024 értéket 6 értéké
for(int i=2;i<7;i++)//kikapcsolja a ledeket
for(int i=2;i<=digit;i++)// bekapcsolja a ledeket a digit értékének megfelelően
A program beolvassa az analóg bemenet értékét 0-tól 1023-ig, ezt részarányosan átalakítja 1-től
6-ig terjedő értékké és bekapcsolja az értéknek megfelelő ledeket.
Az átalakítást a map(vált,kezd_be,vég_be,kezd_kim,vég_kim); utasítás végzi a következő módon:
a zárójelen belüli vált értékét dolgozza fel, a kezd_be és vég_be azt a tartományt jelöli amit majd
a vált értékéből át fog konvertálni arányosan a kezd_kim és vég_kim érték közé.
Ez a mi esetünkben az 1024 bemeneti érték átalakítása 6db kimeneti értékké, pl.:analóg 171 érték
felett kapcsol be az első led.
Homepage | contact | html | css | © 2007 Anyone | Design by www.mitchinson.net | This work is licensed under a Creative Commons Attribution 3.0 License