Мазмуну:

Жарык диодду өчүрүү жана өчүрүү: 3 кадам
Жарык диодду өчүрүү жана өчүрүү: 3 кадам

Video: Жарык диодду өчүрүү жана өчүрүү: 3 кадам

Video: Жарык диодду өчүрүү жана өчүрүү: 3 кадам
Video: Epson принтери күйбөйт (диод күйүп кеткен) 2024, Ноябрь
Anonim
Светодиодду өчүрүү жана өчүрүү
Светодиодду өчүрүү жана өчүрүү

Төмөнкү кадамдар LEDлардын кантип иштээрин көрсөтүү үчүн эксперименттер. Алар LEDди бирдей ылдамдыкта кантип өчүрүү керектигин жана аны кантип өчүрүү жана өчүрүү керек экенин көрсөтүшөт.

Сага керек болот:

  • Ардуино (мен дуэт колдондум)
  • Breadboard
  • 5 мм кызыл LED
  • 330 Ω Резистор (маанилүү эмес 330-560 work иштейт.)
  • 22 өлчөгүч катуу туташуу зымы

Бул эксперименттер үчүн керектүү бөлүктөр бардык Arduino стартап комплекттерине киргизилген.

1 -кадам: Pulse Modulation түшүндүрүлөт

Импульс модуляциясы түшүндүрүлдү
Импульс модуляциясы түшүндүрүлдү
Импульс модуляциясы түшүндүрүлдү
Импульс модуляциясы түшүндүрүлдү
Импульс модуляциясы түшүндүрүлдү
Импульс модуляциясы түшүндүрүлдү

Жарык диоддору жарыктыгына карабай дайыма бирдей чыңалууда иштейт. Жарыктык квадрат толкундуу осциллятор менен аныкталат жана чыңалуу жогорку убакытта жарыктыгын аныктайт. Бул Pulse Width Modulation (PWM) деп аталат. Бул Arduino analogWrite (pin, n) функциясы тарабынан көзөмөлдөнөт, мында n 0ден 255ке чейин мааниге ээ. AnalogWrite () PWMди чыгарат, чыныгы аналог эмес. Эгерде n = 2 LED n = 1ден эки эсе жарык болот. Жарыктык дайыма эки эсе көбөйөт. Ошентип, n = 255 n = 128ден эки эсе жарык болот.

N мааниси көбүнчө милдет цикли деп аталган пайыз менен көрсөтүлөт. Сүрөттөр 25, 50 жана 75% циклдердин осциллографтын издерин көрсөтөт.

2-кадам: Бирдей эмес караңгылатуу

Жада калса караңгылатуу
Жада калса караңгылатуу
Жада калса караңгылатуу
Жада калса караңгылатуу

Диаграммадагыдай схеманы куруңуз. Бул диоддун жарыгын өчүрүү схемасына окшош. Ал 9 -пинди колдонот, анткени сизге PWM иштетилген пин колдонуу керек.

Төмөндөгү эскизди Arduino IDEге көчүрүү/чаптоо жана иштетүү.

Сиз LED канчалык жарык болсо, ошончолук жайыраак экенин байкайсыз. Эң караңгылыкка жакындап калганда, ал абдан бат өчөт.

жараксыз орнотуу ()

{pinMode (9, OUTPUT); } void loop () {int pin = 9; for (int i = 255; i> -1; i--) {analogWrite (pin, i); кечигүү (10); } үчүн (int i = 0; i <256; i ++) {analogWrite (pin, i); кечигүү (10); }}

}

Кийинки кадам, LEDди туруктуу ылдамдыкта кантип өчүрүү керектигин жана биринде билдирүү үчүн көрсөтөт.

3 -кадам: Өйдө жана ылдый бир үчүн ()

Светодиоддун туруктуу ылдамдыкта күңүрттөшү үчүн кечигүү () экспоненциалдык ылдамдыкта көбөйүшү керек, анткени жарым цикл айкындуулуктун жарымын дайыма чыгарат. Менин биринчи оюм map () функциясын колдонууга аракет кылуу болду, бирок ал сызыктуу.

Сызык:

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

кечигүүнүн узундугун аныктоо үчүн жарыктыктын тескери квадратын эсептейт.

Төмөндөгү эскизди Arduino IDEге көчүрүңүз/чаптаңыз, ошондо сиз LED туруктуу ылдамдыкта өчүп -өчүп турганын көрөсүз.

жараксыз орнотуу ()

{pinMode (9, OUTPUT); } void loop () {int x = 1; int pin = 9; for (int i = 0; i> -1; i = i + x) {int d = (16 -i/16)^2; analogWrite (pin, i); кечигүү (d); if (i == 255) x = -1; // чокусунда багытын которуу}}

Сунушталууда: