Egy LED fényereje

Analóg kimenetet (PWM kivezetés) használata a LED fényerejének változtatásához.


Utolsó felülvizsgálat: 2022.02.04 16:50


Ez a példa az analóg kimenet (impulzusszélesség-moduláció (PWM)) használatát mutatja be a LED-ek fényerejének változtatásával. A PWM egy olyan technika, amellyel analóg-szerű viselkedést lehet elérni a digitális kimenetről úgy, hogy azt nagyon gyorsan és a be- és kikapcsolási idők különböző arányával kapcsolják ki és be.

Hardver szükséglet

  • Arduino kártya

  • LED

  • 200 ohm-os ellenállás

  • összekötő vezetékek

  • dugdosós próbapanel (breadboard)

Az áramkör

A 9-es digitális kimeneti kivezetéshez 220 ohmos ellenálláson keresztül csatlakoztatott LED.

Vázlat

A kód

Ebben a példában két ciklust hajtunk végre egymás után, hogy növeljék, majd csökkentsék a 9-es kivezetés kimenetének értékét.

/*
  Fading

  Ez a példa azt mutatja be, hogyan lehet elhalványítani egy LED-et az analogWrite() függvény használatával.

  Az áramkör:
  - A 9-es digitális kivezetésről a földre csatlakoztatott LED.

  created 1 Nov 2008
  by David A. Mellis
  modified 30 Aug 2011
  by Tom Igoe

  Ez a kód nyilvános.

  https://docs.arduino.cc/built-in-examples/analog/Fading
*/
int ledPin = 9;    // A 9-es digitális kivezetéshez csatlakoztatott LED

void setup() {
  // a setup-ban nem történik semmi
}

void loop() {
  // felerősítés min-ről maximumra 5 pontos lépésekben:
  for (int fadeValue = 0 ; fadeValue <= 255; fadeValue += 5) {

    // beállítja az értéket (0 és 255 között):
    analogWrite(ledPin, fadeValue);

    // várjon 30 ezredmásodpercet, hogy láthassa a változtatás hatást
    delay(30);
  }
  // elhalványítás maximumról minimumra 5 pontos lépésekben:
  for (int fadeValue = 255 ; fadeValue >= 0; fadeValue -= 5) {

    // beállítja az értéket (0 és 255 között):
    analogWrite(ledPin, fadeValue);

    // várjon 30 ezredmásodpercet, hogy láthassa a változtatás hatást
    delay(30);
  }
}

Tudj meg többet

További alapvető oktatóanyagokat a beépített példák részben talál.

Felfedezheti a nyelvi referenciát is, az Arduino programozási nyelv részletes gyűjteményét.