lamp.housecope.com
Bumalik

Paano ikonekta ang LED sa Arduino board

Na-publish: 16.08.2021
0
1490

Ang Arduino platform ay napakapopular sa buong mundo. Isang mainam na tool para sa mga unang hakbang sa pagbuo ng programming at pamamahala ng hardware. Habang lumalaki ka sa kasanayan, maaari mong palakihin ang arkitektura sa pamamagitan ng pagdaragdag ng mga peripheral at bumuo ng mas kumplikadong mga system na nagpapatakbo ng mas kumplikadong mga programa. Ang mga Arduino Uno at Arduino Nano board ay angkop para sa paunang pagsasanay. Sa kanilang halimbawa, ang koneksyon ng LED sa Arduino ay isinasaalang-alang.

Ano ang Arduino Uno at Arduino Nano

Ang batayan ng Arduino Uno board ay ang ATmega328 microcontroller. Mayroon din itong mga karagdagang elemento:

  • quartz resonator;
  • pindutan ng pag-reset;
  • USB connector;
  • pinagsamang boltahe stabilizer;
  • Power connector;
  • ilang mga LED para sa mga mode na nagpapahiwatig;
  • chip ng komunikasyon para sa USB channel;
  • connector para sa in-circuit programming;
  • ilang mas aktibo at passive na elemento.

Ang lahat ng ito ay nagpapahintulot sa iyo na gawin ang mga unang hakbang nang hindi gumagamit ng isang panghinang na bakal, at maiwasan ang yugto ng paggawa ng isang naka-print na circuit board.Ang unit ay pinapagana ng panlabas na pinagmumulan ng boltahe na 7..12 V o sa pamamagitan ng USB connector. Sa pamamagitan nito, nakakonekta ang module sa PC para i-download ang sketch. Ang board ay may 3.3 V na pinagmumulan ng boltahe para sa pagpapagana ng mga panlabas na device. 6, 14 na pangkalahatang layunin na digital na mga output ay magagamit para sa operasyon. Ang kapasidad ng pagkarga ng digital na output kapag pinalakas ng 5 V ay 40 mA. Nangangahulugan ito na ang isang LED ay maaaring direktang konektado dito sa pamamagitan ng nililimitahan ang risistor.

Arduino Uno.
Arduino Uno.

Ang Arduino Nano board ay ganap na katugma sa Uno, ngunit mas maliit ang laki at may ilang mga pagkakaiba at pagpapasimple na ipinahiwatig sa talahanayan.

MagbayadControllerKonektor para sa panlabas na supply ng kuryenteMicrochip para sa USB na komunikasyonUSB connector
Arduino UnoATmega328meronATmega8U2USB A-B
Arduino NanoATmega328HindiFT232RLmicro USB
Arduino Nano.
Arduino Nano.

Ang mga pagkakaiba ay hindi mahalaga at hindi mahalaga para sa paksa ng pagsusuri.

Ano ang kailangan mong ikonekta ang LED sa Arduino board

Mayroong dalawang mga pagpipilian para sa pagkonekta sa LED. Para sa mga layunin ng pag-aaral, maaari kang pumili ng anuman.

  1. Gumamit ng built-in na LED. Sa kasong ito, walang ibang kailangan, maliban sa isang cable para sa pagkonekta sa isang PC sa pamamagitan ng USB connector - para sa kapangyarihan at programming. Walang saysay na gumamit ng isang panlabas na pinagmumulan ng boltahe upang paganahin ang board: ang kasalukuyang pagkonsumo ay maliit.

    USB A-B cable
    USB A-B cable para ikonekta ang Arduino Uno sa PC.
  2. Ikonekta ang mga panlabas na LED. Dito kakailanganin mo rin ang:
    • ang LED mismo;
    • kasalukuyang naglilimita sa risistor na may kapangyarihan na 0.25 W (o higit pa) na may nominal na halaga na 250-1000 ohms (depende sa LED);
    • mga wire at isang panghinang para sa pagkonekta sa isang panlabas na circuit.
Pagkonekta ng panlabas na LED
Direktang pagkonekta ng panlabas na LED sa output ng controller.

Ang mga LED ay konektado sa cathode sa anumang digital na output ng microcontroller, anode sa isang karaniwang wire sa pamamagitan ng ballast resistor. Sa malaking bilang ng mga LED, maaaring kailanganin ang karagdagang power source.

Posible bang ikonekta ang maraming LED sa isang output

Maaaring kailanganin na ikonekta ang isang panlabas na LED o grupo ng mga LED sa alinman sa mga output. Ang kapasidad ng pagkarga ng isang output ng microcontroller, tulad ng nabanggit, ay maliit. Ang isa o dalawang LED na may kasalukuyang pagkonsumo ng 15 mA ay maaaring direktang konektado dito nang magkatulad. Ito ay hindi nagkakahalaga ng pagsubok sa survivability ng output na may isang load sa gilid ng posibilidad o lumampas ito. Mas mainam na gumamit ng switch sa isang transistor (patlang o bipolar).

Pagkonekta ng LED sa pamamagitan ng transistor switch sa isang bipolar triode.
Pagkonekta ng LED sa pamamagitan ng transistor switch sa isang bipolar triode.

Resistor R1 dapat piliin upang ang kasalukuyang sa pamamagitan nito ay hindi lalampas sa kapasidad ng pagkarga ng output. Mas mainam na kumuha ng kalahati o mas kaunti sa maximum. Kaya, upang magtakda ng katamtamang kasalukuyang in 10 mA, ang paglaban sa 5 volts ng supply ay dapat na 500 ohm.

Ang bawat LED ay dapat magkaroon ng sarili nitong ballast resistor, hindi kanais-nais na palitan ito ng isang karaniwang isa. Pinili ang Rbal upang maitakda ang kasalukuyang operating nito sa bawat LED. Kaya, para sa isang supply boltahe ng 5 volts at isang kasalukuyang ng 20 mA, ang paglaban ay dapat na 250 ohms o ang pinakamalapit na karaniwang halaga.

Kinakailangan upang matiyak na ang kabuuang kasalukuyang sa pamamagitan ng kolektor ng transistor ay hindi lalampas sa pinakamataas na halaga nito. Kaya, para sa KT3102 transistor, ang pinakamalaking Ik ay dapat na limitado sa 100 mA. Nangangahulugan ito na hindi hihigit sa 6 na LED na may kasalukuyang maaaring konektado dito. 15 mA. Kung hindi ito sapat, dapat gumamit ng mas malakas na susi.Ito ang tanging paghihigpit para sa pagpili ng isang n-p-n transistor sa naturang circuit. Kahit na dito, theoretically, ito ay kinakailangan upang isaalang-alang ang pakinabang ng triode, ngunit para sa mga kundisyong ito (input kasalukuyang 10 mA, output 100) ito ay dapat na hindi bababa sa 10. Anumang modernong transistor ay maaaring gumawa ng tulad h21e.

Ang ganitong circuit ay angkop hindi lamang para sa pagpapalakas ng kasalukuyang output ng microcontroller. Kaya maaari mong ikonekta ang sapat na makapangyarihang mga actuator (relay, solenoid, electric motor) na pinapagana ng tumaas na boltahe (halimbawa, 12 volts). Kapag kinakalkula, kailangan mong kunin ang katumbas na halaga ng boltahe.

Maaari mo ring gamitin upang magsagawa ng mga susi Mga MOSFET, ngunit maaaring mangailangan sila ng mas mataas na boltahe upang mabuksan kaysa sa maaaring i-output ng Arduino. Sa kasong ito, ang mga karagdagang circuit at elemento ay dapat ibigay. Upang maiwasan ito, kinakailangan na gumamit ng tinatawag na "digital" na field-effect transistors - kailangan nila ng 5 boltahe buksan. Ngunit hindi gaanong karaniwan ang mga ito.

Programmatically Pagkontrol ng isang LED

Ang pagkonekta lamang ng LED sa output ng microcontroller ay kaunti lamang ang nagagawa. Ito ay kinakailangan upang master ang kontrol ng LED mula sa Arduino programmatically. Magagawa ito sa wikang Arduino, na nakabatay sa C (C). Ang programming language na ito ay isang adaptasyon ng C para sa paunang pag-aaral. Pagkatapos ng mastering ito, ang paglipat sa C ++ ay magiging madali. Upang magsulat ng mga sketch (bilang mga programa para sa Arduino ay tinatawag) at i-debug ang mga ito nang live, kailangan mong gawin ang sumusunod:

  • i-install ang Arduino IDE sa isang personal na computer;
  • maaaring kailanganin mong mag-install ng driver para sa USB communication chip;
  • ikonekta ang board sa isang PC gamit ang USB-microUSB cable.
Arduino development environment interface
Ang interface ng Arduino IDE development environment ay isang imbitasyon na magsulat ng isang programa.

Maaaring gamitin ang mga computer simulator upang i-debug ang mga simpleng program at circuit. Ang simulation ng pagpapatakbo ng Arduino Uno at Nano boards ay sinusuportahan, halimbawa, ng Proteus (simula sa bersyon 8). Ang kaginhawahan ng simulator ay imposibleng hindi paganahin ang hardware na may maling binuo na circuit.

Simulation ng gawain ng Arduino na may
Simulation ng Arduino na may konektadong LED sa Proteus 8.23.

Ang mga sketch ay binubuo ng dalawang module:

  • setup - naisakatuparan nang isang beses sa pagsisimula ng programa, nagpapasimula ng mga variable at mode ng pagpapatakbo ng hardware;
  • loop – ay isinasagawa nang paikot pagkatapos ng setup block hanggang sa infinity.

Para sa LED na koneksyon maaari mong gamitin ang alinman sa 14 na libreng pin (pin), na kadalasang mali ang tawag sa mga port. Sa katunayan, ang port ay, simpleng pagsasalita, isang grupo ng mga pin. Ang pin ay isang elemento lamang.

Ang isang halimbawa ng kontrol ay isinasaalang-alang para sa pin 13 - ang isang LED ay nakakonekta na dito sa board (sa pamamagitan ng isang amplifier-follower sa Uno board, sa pamamagitan ng isang risistor sa Nano). Upang gumana sa isang port pin, dapat itong i-configure sa input o output mode. Maginhawang gawin ito sa katawan ng pag-setup, ngunit hindi kinakailangan - ang patutunguhan ng output ay maaaring dynamic na baguhin. Iyon ay, sa panahon ng pagpapatupad ng programa, ang port ay maaaring gumana alinman para sa input o para sa output ng data.

Ang pagsisimula ng pin 13 ng Arduino (pin PB5 ng port B ng ATmega 328 microcontroller) ay ang mga sumusunod:

void setup()

{

pinMode(13, Output);

}

Pagkatapos isagawa ang utos na ito, gagana ang pin 13 ng board sa output mode, bilang default ito ay mababa ang logic. Sa panahon ng pagpapatupad ng programa, zero o isa ang maaaring isulat dito. Ganito ang hitsura ng record ng unit:

void loop()

{

digitalWrite(13, HIGH);

}

Ngayon ang pin 13 ng board ay itatakda nang mataas - isang logic, at maaari itong magamit upang sindihan ang LED.

Upang patayin ang LED, kailangan mong itakda ang output sa zero:

digitalWrite(13, LOW);

Kaya, sa pamamagitan ng pagsusulat ng halili ng isa at zero sa kaukulang bit ng rehistro ng port, maaari mong kontrolin ang mga panlabas na device.

Ngayon ay maaari mong gawing kumplikado ang Arduino program upang makontrol ang LED at matutunan kung paano mag-blink ang light emitting element:

void setup()

{

pinMode(13, Output);

}

void loop()

{

digitalWrite(13, HIGH);

pagkaantala(1000);

digitalWrite(13, LOW);

pagkaantala(1000);

}

Koponan pagkaantala(1000) lumilikha ng pagkaantala ng 1000 millisecond, o isang segundo. Sa pamamagitan ng pagbabago ng halagang ito, maaari mong baguhin ang dalas o duty cycle ng LED na kumikislap. Kung ang isang panlabas na LED ay konektado sa isa pang output ng board, pagkatapos ay sa programa, sa halip na 13, dapat mong tukuyin ang bilang ng napiling pin.

Para sa kalinawan, inirerekomenda namin ang isang serye ng mga video.

Ang pagkakaroon ng pinagkadalubhasaan ang mga LED na koneksyon sa Arduino at natutunan kung paano kontrolin ito, maaari kang lumipat sa isang bagong antas at magsulat ng iba, mas kumplikadong mga programa. Halimbawa, maaari mong matutunan kung paano lumipat ng dalawa o higit pang mga LED gamit ang isang pindutan, baguhin ang dalas ng blinking gamit ang isang panlabas na potentiometer, ayusin ang liwanag ng glow gamit ang PWM, baguhin ang kulay ng isang RGB emitter. Ang antas ng mga gawain ay limitado lamang sa pamamagitan ng imahinasyon.

Mga komento:
Wala pang komento. Maging una!

Pinapayuhan ka naming basahin

Paano ayusin ang LED lamp sa iyong sarili