Реклама
Ово је следећи део у нашој Ардуино серији, а овај пут? Учићу и користим Арраис да направите мало украса за божићно дрвце са разноврсним бљештавим наставцима. Ово би био идеалан пројекат да задржите децу ако их желите научити основном лемљењу - само монтирајте ЛЕД на комад картице и можете да добијете напајање из стандардне 9в батерије.
То је такође кључна лекција за почетнике Ардуино програмирање, мада, ако не планирате да то заиста користите као украс, топло бих вам препоручио да га зачните.
Напомена: Ово је водич за почетнике и сигурно смо победили? Нећеш пробити било који нови терен - зар не? с? само уређај за подучавање концепата употребе Арраис и За петље бавити се а велики број ЛЕД-ова (или други излазни уређаји).
Ако немаш? Већ сад би било добро време да се пратимо заједно са осталим чланцима у низу:
- Шта је Ардуино и шта можете учинити са тим? Шта је Ардуино и шта можете учинити са тим?Ардуино је изузетан мали електронички уређај, али ако га никада раније нисте користили, шта су тачно и шта можете да урадите са њим? Опширније ?
- Шта је Ардуино стартер кит и шта садржи? Шта је укључено у Ардуино Стартер Кит? [МакеУсеОф објашњава]Претходно сам овде увео Ардуино хардвер отвореног кода на МакеУсеОф, али требат ће вам више од стварног Ардуино-а да бисте нешто направили од њега и заправо започели. Ардуино "стартер комплети" су ... Опширније
- Још цоол компоненти које можете купити заједно са својим Стартер Китом Још 8 компоненти за ваше Ардуино пројектеДакле, размишљате о набавци Ардуино стартног комплета, али питате се да ли ће неки основни ЛЕД и отпорници бити довољни да вас заузму за викенд? Вероватно не. Ево јос 8 ... Опширније
- Почетак рада с Ардуино стартер китом? Инсталирање управљачких програма и подешавање плоче и прикључка Први кораци са својим Ардуино Стартер Китом - инсталирање управљачких програма и подешавање плоче и прикључкаПа, купили сте себи Ардуино стартер сет и вероватно неке друге случајне цоол компоненте - шта сад? Како заправо започињете с програмирањем ове Ардуино ствари? Како то подесити ... Опширније
- Фритзинг, бесплатан алат за цртање шема дијаграма Фритзинг - Ултимативни алат за скицирање пројеката електронике [Цросс Платформ]Иако звучи као алкопоп, Фритзинг је заправо невероватан део бесплатног софтвера који можете користити за креирање дијаграми кола и компоненти за употребу са електронским плочама са брзим прототиповањем, попут фантастичног отвореног кода Ардуино ... Опширније
- Пажљивији поглед на структуру Ардуинове апликације и примера програма трептаја Први кораци са Ардуином: ближи поглед на склопну плочу и структуру програмаПрошли пут сам вас оставио да сте подесили свој Ардуино за рад са Мац или Виндовс и послао сам једноставну тестну апликацију која је трептала ЛЕД-ом на возилу. Данас ћу објаснити код ... Опширније
За овај пројекат, ти? Требаће ми барем 8 или 9 ЛЕД било у црвеној или зеленој боји, а отпорник за сваког од њих, а пано и неке жице за спајање. Стартер комплет из Ооомлоута, који сам недавно купио и приказан у овом уџбенику, нуди велику вредност за новац и има више ЛЕД и отпорника од вас? Икад ће требати, као и долазак са уредном даском и футролом Ардуино да ствари буду уредне.
Овде? коначна ствар:
И видео о томе у акцији.
Овде? поглед на ожичење из Фритзинг-а. То? Врло је основно - само повежите позитивне водилице ЛЕД-а на игле 2-> шта год (до пин 13), а негативне ноге спојите на земљу линијом са отпорником. Вредност И? Овде се користи 560 Охма. То? је за ожичење.
На страни софтвера, размислите о томе како можете да напишете све ове ЛЕД у коду. Можете да решите овако:
инт лед1 = 2; // први ЛЕД на пин 2. инт лед2 = 3; // други на пин 3. // итд. итд. воид лооп () {дигиталВрите (лед1, ХИГХ); кашњење (100); дигиталВрите (лед1, ЛОВ); кашњење (100); дигиталВрите (лед2, ХИГХ); // итд. }
Требали бисте моћи да видите да ће, уз 9 ЛЕД диода, ово брзо постати напорно. Одговор лежи Арраис, шта ако можеш? Сећам се нашег Програмирање 101 о основним типовима података Основе рачунарског програмирања 101 - променљиве и типови податакаПредставивши се и поразговарајући о објектно оријентисаном програмирању пре и где је његов имењак долази од, мислио сам да је време да прођемо кроз апсолутне основе програмирања у језику који није специфичан за језик начин. Ово ... Опширније - су у основи само спискови.
Синтакса изгледа овако (ставите ово као прву линију у вашем коду):
инт лед [] = {2,3,4,5,6,7,8,9,10};
Квадратни заграде означавају да су? променљива ће бити ан Арраи. Валовити заграде прилажу листу бројева пинова који ће садржати наш низ.
Сада, да бисмо користили Арраи, морамо да га адресирамо бројем индекса. Тхе индекс почиње са 0, и увек ће ићи до 1 мање од укупног броја ствари унутар ње (па са 9 предмета последњи би имао индекс 8).
Пишете то овако:
лед [0]
Који би у нашем случају могао да добије број 2, јер то? Шта? с на индексу 0 у нашем низу.
Пратиш до сада? Сјајно. То само није? Али за нас је довољно - потребан нам је и начин да поновимо сваки елемент наше ЛЕД диоде. За то ћемо користити за петљу. Синтакса која се ради је таква:
фор (почетна променљива; стање под којим се понављамо поново; промена за промену сваке итерације)
На пример:
фор (инт и = 0; и <9; и ++)
Што каже
- покрените ову петљу променљивом, ја, која има вредност нула
- настави петље само док ја јесам мање од 9? (Дакле: 0,1,2,3,4,5,6,7,8)
- сваки пут, додај 1 у и (и ++ је кратак начин да кажем и = и + 1)
У основи, петља ће се понављати онолико пута колико имамо ЛЕД, и сваки пут? с понављамо имаћемо променљиву, ја, које можемо користити како год желимо.
Ми? За почетак ћу користити ову структуру два пута. Једном када се уђе у функцију подешавања да се све наше игле пребаце у излазни режим, овако:
воид сетуп () {фор (инт и = 0; и <9; и ++) {пинМоде (лед [и], ОУТПУТ); } }
Можете ли видети шта смо тамо урадили? Уместо да напишемо 9 линија кода да бисмо сваки појединачни пин прогласили излазом, створили ћемо петљу „фор“ да се понови 9 пута, сваки пут постављајући други пин.
Сада бисте требали моћи да видите како бисмо могли да урадимо потпуно исту ствар у главној програмској петљи да укључимо сваки ЛЕД у низу:
воид петље () {фор (инт и = 0; и <9; и ++) {дигиталВрите (лед [и], ХИГХ); кашњење (100); дигиталВрите (води [и], ЛОВ); } }
Пробај то. Можете преузмите пуни код за данашњи пројекат одавде ако ти? д радије га не укуцајте поново (мада вас охрабрујем, јер помаже процес учења).
Ок, сада имамо прилично досадан редослед осветљења. Дозволити? с програмом још један. Само за забаву? учини то сасвим случајним. Замените главни код петље са овим:
воид лооп () { инт рандомЛед = случајно (0,8); дигиталВрите (води [рандомЛед], ХИГХ); кашњење (50); рандомЛед = рандом (0,8); дигиталВрите (води [рандомЛед], ЛОВ); }
Уместо да користимо петљу "фор" за понављање сваке ЛЕД, изаберемо случајни број од 0-9 и упалимо то.
Оставицу га данас за данас, јер би сада требали бити наоружани довољно знања да програмирате све нове секвенце и експериментишете са петљицама. Да бих доказао колико је све ово лако, изазвао сам супругу да смисли редослед какав она? Волео бих да видим, па онда?да сама то програмира, с обзиром на само код и лекције? до сада сам имао Смислила је ово, па погледајте да ли можете то да одредите за домаћи задатак!
Питања, сугестије, проблеми - јавите се у коментарима.
Јамес има диплому о вештачкој интелигенцији и сертификат је ЦомпТИА А + и Нетворк +. Он је водећи програмер МакеУсеОф-а и своје слободно време проводи играјући ВР паинтбалл и таблегамес. Градио је рачунаре још од детета.