Tartalomjegyzék:

A LED be- és kikapcsolása: 3 lépés
A LED be- és kikapcsolása: 3 lépés

Videó: A LED be- és kikapcsolása: 3 lépés

Videó: A LED be- és kikapcsolása: 3 lépés
Videó: Йога для начинающих дома с Алиной Anandee #3. Здоровое гибкое тело за 40 минут. Продвинутый уровень. 2024, Július
Anonim
Fade LED ki és be
Fade LED ki és be

A következő lépések kísérletek a LED -ek működésének szemléltetésére. Szemléltetik, hogyan lehet a LED -et egyenletesen tompítani, és hogyan kell elhalványítani.

Szükséged lesz:

  • Arduino (duót használtam)
  • Kenyeretábla
  • 5 mm -es piros LED
  • 330 Ω ellenállás (nem kritikus 330-560 Ω működik.)
  • 22 Gauge Solid Hookup Wire

Az ezekhez a kísérletekhez szükséges alkatrészek megtalálhatók az összes Arduino indító készletben.

1. lépés: Az impulzusmoduláció magyarázata

Az impulzus moduláció magyarázata
Az impulzus moduláció magyarázata
Az impulzus moduláció magyarázata
Az impulzus moduláció magyarázata
Az impulzus moduláció magyarázata
Az impulzus moduláció magyarázata

A LED -ek a fényerőtől függetlenül mindig azonos feszültséggel működnek. A fényerőt négyszöghullámú oszcillátor határozza meg, és a feszültség magas ideje határozza meg a fényerőt. Ezt impulzusszélesség -modulációnak (PWM) hívják. Ezt az Arduino analogWrite (pin, n) függvény vezérli, ahol n értéke 0 és 255 között van. Az analogWrite () kimenete PWM, nem valódi analóg. Ha n = 2, a LED kétszer olyan világos lesz, mint n = 1. A fényerő mindig megduplázódik, ha n megduplázódik. Tehát n = 255 kétszer világosabb lesz, mint n = 128.

Az n értékét gyakran százalékos arányban fejezik ki, amelyet a munkaciklusnak neveznek. A képeken oszcilloszkóp nyomai láthatók 25, 50 és 75% -os munkaciklusokra.

2. lépés: Egyenletes tompítás

Egyenletes tompítás
Egyenletes tompítás
Egyenletes tompítás
Egyenletes tompítás

Építse fel az áramkört az ábrán látható módon. Ez olyan, mint a LED -ek villogásának áramköre. A 9 -es tűt használja, mert PWM -kompatibilis tűt kell használnia.

Másolja/illessze be az alábbi vázlatot az Arduino IDE -be, és futtassa.

Észre fogja venni, hogy minél világosabb a LED, annál lassabban halványul. Ahogy a homályhoz közeledik, nagyon gyorsan halványulni fog.

üres beállítás ()

{pinMode (9, OUTPUT); } void loop () {int pin = 9; for (int i = 255; i> -1; i--) {analogWrite (pin, i); késleltetés (10); } for (int i = 0; i <256; i ++) {analogWrite (pin, i); késleltetés (10); }}

}

A következő lépés bemutatja, hogyan lehet a LED -et állandó sebességgel tompítani, és egyben a nyilatkozathoz.

3. lépés: Fel és le egyben ()

Ahhoz, hogy a LED állandó sebességgel halványuljon, a késleltetésnek () exponenciális ütemben kell növekednie, mert a működési ciklus fele mindig a fényerő felét eredményezi. Az első gondolatom az volt, hogy megpróbálom használni a map () függvényt, de lineáris.

A vonal:

int d = (16-i/16)^2;

kiszámítja a fényerő fordított négyzetét a késleltetés hosszának meghatározásához.

Másolja/illessze be az alábbi vázlatot az Arduino IDE -be, és látni fogja, hogy a LED állandó sebességgel kialszik és kialszik.

üres beállítás ()

{pinMode (9, OUTPUT); } void loop () {int x = 1; int pin = 9; mert (int i = 0; i> -1; i = i + x) {int d = (16 -i/16)^2; analogWrite (pin, i); késleltetés (d); ha (i == 255) x = -1; // irányváltás csúcson}}

Ajánlott: