Kumukurap sa isang LED na may Arduino - Kumpletong Tutorial

Subukan Ang Aming Instrumento Para Sa Pagtanggal Ng Mga Problema





Ang post ay komprehensibong tumatalakay sa isang pangunahing gabay sa pagpapatupad ng code ng Arduino para sa pagpikit sa LED na on-board. Ang data ay binuo, nasubukan, at isinulat ni Jack Franko.



CODE: para sa simpleng nakapaloob na LED sa pin 13 ng ARDUINO BOARD bilang default na nai-program na ito upang kumurap ng madalas sa 50 Mili Seconds dahil sa paglalarawan ito ay isasaad ng mga asma (milliseconds).

/ * unang Simple
Programa sa Arudino NI JACKFRANKO * /



int l = 13
//where l is pin 13void setup(){ pinMode
(l,OUTPUT) }void loop() { digitalWrite
(l,HIGH) delay(50) digitalWrite
(l,LOW) delay(50)}

Tandaan: Habang pinag-aaralan namin ang isang Arduino UNO R3 Board Programing kung hindi ka isang programmer o isang taga-disenyo o isang libangan, bilang isang mag-aaral dapat kang magsimula mula sa pangunahing kaalaman.

Ang unang bagay ay upang maunawaan ang Arduino Uno R3 sa pamamagitan ng pagkuha ng isang kit na magagamit sa mga online shop.

Paglalarawan:

tulad ng ayon sa tradisyon ito ay upang makuha ang aming pangalan bago magsimula ang programa ay isang magandang IDEA, narito ang aking unang pangunahing programa na nakasaad sa itaas ay nagsimula sa pag-sign / * at ang teksto ng pangalan at lahat ng bagay na nais mong i-type sa pagitan nito * / na kung saan ay hindi nakakaapekto sa programa at hindi ito bahagi ng programa dahil alam ng programang Arduino Compiler na ang mga bagay sa pagitan ng marka na '/ *, * /' ay dapat laktawan, pamagat lamang para sa programa.

/ * unang Simple

Programa sa Arudino NI JACKFRANKO * / Susunod na Linya int l = 13

// kung saan ang l ay pin 13

Ito ay isang bahagi ng Pagpapahayag ng programa kung saan idedeklara namin ang integer na may utos na 'int' na sinusundan ng maliit na alpabeto L na katumbas ng 13 at nagtapos sa semicolon pagkatapos pagkatapos ng dobleng slash na '//' at ilang teksto.

Dito binigyan namin ang utos na 'int' na karaniwang sinasabi naming integer at maliit na L na katumbas ng 13 at nagtapos kami sa semicolon dito sinabi namin sa tagatala na ang halagang 'l' ay katumbas ng 13 na matatagpuan sa pin no. labintatlo sa board ng arduino, narito ang 'l' ay isang halaga lamang na itinalaga upang i-pin ang 13, na ang 'l' ay hindi anumang pag-andar o script para sa tagatala, para sa amin na gawing magiliw ang code na 'l' sa ang proyektong ito ay isang maikli para sa LED.

Nais kong gawing mas maliit ang code at makatipid ng ilang puwang. Sa puntong ito kung hindi mo nais na panatilihin ito bilang 'l' pagkatapos sabihin na nais mong panatilihin ito para sa ie 'ako' pagkatapos ay sa buong code kung saan man mayroong 'l' kailangan mong palitan ito ng 'ako' kung hindi man hindi gagana ang tagatala at bibigyan ka nito ng error.

Ang pahayag na ito ay binubuo ng ikalawang bahagi na sinusundan ng “//“ at ilang teksto dito kailangan nating maunawaan na ang anumang pahayag ay sinusundan ng “//” sa pagbubukas at walang pagsasara, hindi babasahin ng tagatala ang pahayag na iyon. Maaari itong maging sa maraming linya nang hindi nagsasara. Ito ay para sa amin upang magbigay ng ilang sanggunian at tala sa code para sa pag-unawa.

Bago maunawaan ang natitirang bahagi ng code dapat nating maunawaan ang pangunahing mga pag-andar ng code at iyon ay 'void setup' at 'void loop' dito ang dalawang pagpapaandar na ito ay napakahalaga dahil idedeklara namin ang aming INPUT, OUTPUT at kung anong uri ng trabaho tapos na sa loob nito. kaya't magsimula tayo sa walang bisa na pag-set up, ito ay isang bahagi ng code kung saan sasabihin namin ang aming INPUTS & OUTPUTS na dapat tumakbo nang isang beses para sa aming proyekto. Dito ay pag-uusapan natin ang tungkol lamang sa isang output ayon sa aming code.

Ang Iba pang function na void loop ay ang pangalawang bahagi ng code na tatakbo sa anyo ng loop. narito ang parehong pag-andar na binubuo ng curve bracket na bukas at sarado at pagkatapos pagkatapos buksan ang curly bracket na may hawak na ilang code at malapit na ang curly bracket. Magbibigay ako ng impormasyon tungkol sa bracket na ito sa susunod na programa. dito kailangan nating ituon ang mga kulot na bracket kung saan mayroon kaming ilang code na nakapaloob sa pagitan ng mga braket na ito.

void setup(){ pinMode
(l,OUTPUT) }

Narito namin nailahad ang pagpapaandar na dapat tumakbo nang isang beses para sa aming proyekto at iyon bilang aming output. kung Napansin mo na isinulat namin ang aming code sa mga kulot na bracket kung saan namin ipinahayag na ang pinMode l ay output sa mga curve bracket at nagtapos sa semicolon,

dito pinMode ay function na itinalaga sa integer l bilang OUTPUT.

Samakatuwid l ay itinalaga upang i-pin no 13 sa arduino compiler ay mauunawaan na ang pin no 13 ay tinatawag na l at l ay pin no 13 kung inilalagay natin ang 13 sa lugar ng l pagkatapos ng pagpapaandar ng PinMode
bilang output isasaalang-alang nito ang parehong 13 pati na rin ang l.

kung tatanggalin namin ang int l = 13 hindi nito isasaalang-alang ang alpabeto l at bibigyan ka nito ng isang error. Dito namin naitakda ang pin
walang 13 na alpabeto l bilang output, palaging nakasulat sa malalaking titik bilang OUTPUT at ang function na pinmode ay nakasulat sa pinMode na nagsisimula sa maliit na titik nang walang puwang, iba pang salita na Mode na nagsisimula sa malalaking titik na naiintindihan ng tagatala na kung saan ay sensitibo sa kaso.

Susunod na pupunta kami sa loop mode ng aming programa dito ipinapahayag namin ang lahat ng pagpapaandar na dapat tumakbo sa loop
para sa isang walang limitasyong mahabang panahon.

void loop() { digitalWrite
(l,HIGH) delay(50) digitalWrite
(l,LOW) delay(50)}

Dito namin idineklara ang integer l sa TAAS sa pagpapaandar na digitalWrite. Ang pahayag na ito digitalWrite ay gagawing integer l MATAAS ay nangangahulugang kailan ON na liliko ito ON na pin no13 sa Arduino board tulad ng sinabi namin na pin no 13 ay l na pinaghihiwalay ng kuwit sa mga curve bracket.
Dito matapos naming sabihin na ang pagkaantala (50) ng pahayag na ito ay bibilangin ang oras sa ms (millisecond) kung saan ang 1000ms ay katumbas ng 1 segundo. Sa program na ito nais ko ang aking humantong sa flash 20 oras sa isang segundo pagkalkula sa matematika
binigyan ako ng isang halaga na 50 na nakapaloob sa mga braket.

Nangangahulugan ito sa ilalim ng seksyon ng loop na unang linya ay bubuksan ang aking LED na matatagpuan sa pin no 13 at maghintay para sa 5ms. Kung hindi kami nagbigay ng karagdagang pagpapaandar sa loop upang i-OFF ang LED mananatili itong ON.

Kahit na sinabi namin na pagkaantala para sa 50ms. Kaya nagbigay kami ng isang utos na i-OFF ang LED
sa digitalWrite (l, LOW) , matapos sabihin ang pahayag na ito na LED ay hindi papatayin dahil ang loop ay hindi kumpleto nang wala antala (50) unang buksan namin ang LED pagkatapos ay maghintay kami para sa 50ms pagkatapos ay i-OFF na humantong at pagkatapos ay maghintay kami para sa 50ms upang makumpleto ang isang loop na kung saan ay pagpunta sa maglaro para sa isang infintely hangga't ang Arduino ay pinapagana. Ito ay i-ON & OFF ang iyong led sa pin no
13 para sa 20 beses bawat segundo.




Nakaraan: SPDT Solid State DC Relay Circuit gamit ang MOSFET Susunod: Incubator Reverse Forward Motor Controller Circuit