Minden, ami elektronika

Elektronikával hobbi szinten foglalkozó oldal

analogWrite()

2019. augusztus 20. 01:18 - raptor13

Leírás

Analóg értéket (PWM hullám) hoz létre egy lábon. Használható LED-ek fényének, vagy motorok sebességének a változtatására. Az analogWrite() parancs kiadása után a megadott lábon a paraméternek megfelelő kitöltési idejű négyszögjel lesz, amely egészen addig fog így működni, amíg nem használjuk az analogWrite(), a digitalRead() vagy a digitalWrite() parancsokat ugyanazon a lábon.

Alaplap PWM lábak PWM frekvencia
UNO, Nano, Mini 3, 5, 6, 9, 10, 11 490 Hz (5. és 6. lábon 980 Hz)
Mega 2-13, 44-46 490 Hz (4. és 13. lábon 980 Hz)
Leonardo, Micro, Yún 3, 5, 6, 9, 10, 11, 13 490 Hz (3. és 11. lábon 980 Hz)
UNO Wifi Rev 2. 3, 5, 6, 9, 10 976 Hz
MKR alaplapok* 0-8, 10, A3 (18), A4 (19) 732 Hz
MKR1000 Wifi* 0-8, 10, 11, A3 (18), A4 (19) 732 Hz
Zero* 3-13, A0 (14), A1 (15) 732 Hz
DUE** 2-13 1000 Hz
101 3, 5, 6, 9 3. és 9. láb: 490 Hz, 5. és 6. láb: 980 Hz

 

* A fentebb említett lábak PWM képességein túl az MKR és a Zero alaplapok valódi analóg kimenettel is rendelkeznek, ahol az analogWrite() a DAC0 (A0) lábat vezérli.
** A fentebb említett lábak PWM képességein túl a Due valódi analóg kimenettel rendelkezik, ahol az analogWrite() a DAC0 és a DAC1 lábat vezérli

Nem kell kiadni a pinMode() parancsotot, hogy a lábat kimenetként konfigurálja, mielőtt meghívja az analogWrite() -ot. Az analogWrite() funkciónak semmi köze nincs az analóg lábakhoz vagy az analogRead() funkcióhoz.

Szintaxis

analogWrite(pin, érték)

paraméterek:

pin: annak a lábnak a száma, amelyet írni kíván. Megengedett adattípusok: int.
érték: 0 (mindig ki) és 255 (mindig bekapcsolt) között. Megengedett adattípusok: int.

Eredmény

nincs

Példaprogram

A LEDfényerejét a potenciométer beolvasott értékével arányosan állítja.

Megjegyzések és figyelmeztetések

Az 5. és 6. érintkezőn generált PWM kimenetek vártnál magasabb üzemi ciklusúak lesznek. Ennek oka a millis() és a delay() funkciókkal való kölcsönhatás, amelyek ugyanazt a belső időzítőt használják, amelyet az említett PWM kimenetek előállításához használtak. Ez elsősorban alacsony üzemi ciklus esetén (például 0 - 10) figyelhető meg, és 0-ot eredményezhet az 5. és a 6. lábon.

Lásd még

analogRead()

analogReference()

analogWriteResolution()

PWM

Blink

Az eredeti bejegyzés IDE kattintva olvasható el.

Szólj hozzá!
Címkék: funkciók arduino

A bejegyzés trackback címe:

https://electro.blog.hu/api/trackback/id/tr1115007164

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.
süti beállítások módosítása