Hirdetés

arduino áramköri lapLegutóbb elhagytam felállítva Az Arduino kezdőkészlet első lépései - Illesztőprogramok telepítése és az alaplap és a port beállításaTehát vásároltad magadnak egy Arduino kezdőkészletet és esetleg más véletlenszerű alkatrészeket - most mi van? Hogyan kezdje el valójában ezt az Arduino-dolog programozását? Hogyan állítja be ... Olvass tovább az Arduino-val, hogy dolgozzon Mac-rel vagy Windows-nal, és feltöltött egy egyszerű tesztalkalmazást, amely villogott a fedélzeti LED-en. Ma el fogom magyarázni a feltöltött kódot, az Arduino szoftver felépítését, és egy kicsit többet maga a táblán lévő elektronikus bitekről.

Ez a cikk az Arduino sorozat bevezetésének része. A sorozat többi cikke eddig:

  • Mi az Arduino és mit tudsz vele csinálni? Mi az Arduino és mit lehet tenni vele?Az Arduino egy figyelemre méltó kis elektronikai eszköz, de ha még soha nem használta ezt, akkor mi is pontosan ezek, és mit lehet ezzel csinálni? Olvass tovább ?
  • Mi az Arduino indítókészlet és mit tartalmaz? Mit tartalmaz egy Arduino kezdőkészlet? [MakeUseOf magyarázat] Korábban már bemutattam az Arduino nyílt forráskódú hardvert itt a MakeUseOf-on, de nemcsak a tényleges Arduino-ra van szükséged, hogy valamit beépítsen belőle, és valóban elinduljon. Az Arduino "indítókészletek" ... Olvass tovább
  • További kiváló alkatrészek vásárolhatók az indítókészlettel További 8 kiváló alkatrész az Arduino projektekhezTehát Ön egy Arduino indítókészlet megszerzésén gondolkodik, de azon kíváncsi, vajon elegendő-e néhány alapvető LED és ellenállás, hogy elfoglalja a hétvégét? Valószínűleg nem. Itt van még egy 8 ... Olvass tovább
  • Az Arduino kezdőkészlet első lépései - Illesztőprogramok telepítése és az alaplap és a port beállítása Az Arduino kezdőkészlet első lépései - Illesztőprogramok telepítése és az alaplap és a port beállításaTehát vásároltad magadnak egy Arduino kezdőkészletet és esetleg más véletlenszerű alkatrészeket - most mi van? Hogyan kezdje el valójában ezt az Arduino-dolog programozását? Hogyan állítja be ... Olvass tovább

A hardver

Vessen egy közelebbi pillantást arra, hogy az Arduino Uno mit tartalmaz az áramköri bitek tekintetében.

Íme egy kibővített ábra, amely hivatkozhat:

arduino áramköri lap
  • A tetején 14 digitális bemeneti / kimeneti érintkező található (0-13 számozott). Ezek a Arduino legsokoldalúbb csapjai, és bemeneti vagy kimeneti funkcióként működhetnek, és a projektek magját képezik. A digitális azt jelenti, hogy az a jel, amelyet ezek a csapok írni vagy olvasni lehet, be- vagy kikapcsol.
  • A digitális tűkből 6, amelyeket a tilde jel megjelöl ~ képesek megtenni azt, amit úgy hívnak Impulzus szélesség moduláció. Nem vagyok villamosmérnök, így nem zavarom magam azzal, hogy elmagyarázom ennek mögött álló tudományt, de neked és én ez azt jelenti, hogy számos kimeneti szintet tudunk biztosítani - például egy LED tompítását vagy a motor hajtását változatosan gyorsítja.
  • A 13. érintkező különlegessége, hogy beépített LED-del rendelkezik. Ez csak a kényelem és a tesztelés céljából valóban. Használhatja ezt a fedélzeti LED-et, ahogyan a Blink példa alkalmazásban, egyszerűen kiadja a 13. érintkezőt - vagy használható szokásos I / O érintkezőként.
  • A jobb alsó sarokban 6 analóg bemeneti érintkező található. Ezek leolvassák az analóg érzékelők, például a fénymérő vagy a változó ellenállások értékét.
  • A bal alsó sarokban, az analóg bemeneti csapok mellett tápcsatlakozók vannak. Az egyetlen, amelyben valóban aggódnia kell, a földi érintkezők (GND), 3,3 V és 5 V tápvezetékek.
  • Végül, az Arduinón egyetlen kapcsoló található a visszaállítási kapcsoló. Ez újraindítja a memóriájában lévő programot.
  • Az Arduino-nak van egy meghatározott memóriamennyisége, és ha a program túlságosan nagy, a fordító hibát fog adni.

Az Arduino Program felépítése

Minden Arduino program legalább két funkcióból áll (ha nem tudja, mi a funkció, kérjük, olvassa el a alapvető programozási útmutató, 2. rész - funkció és vezérlő utasítások A programozás abszolút alapjai kezdőknek (2. rész)A programozás abszolút kezdő útmutatójának 2. részében bemutatom a funkciók alapjait, a visszatérési értékeket, a hurkokat és a feltételt. Mielőtt ezzel foglalkozna, győződjön meg arról, hogy elolvasta az 1. részt, ahol elmagyaráztam a ... Olvass tovább és 1. rész, ahol a változókat tárgyaltuk A számítógépes programozás alapjai 101 - Változók és adattípusokBemutattuk és kicsit beszéltünk az objektum-orientált programozásról korábban és hol a neve származik, azt hittem, itt az ideje, hogy átlépjük a programozás abszolút alapjait egy nem nyelv specifikusan út. Ez... Olvass tovább folytatás előtt).

Az első a beállítási funkció. Ezt kezdetben - csak egyszer - futtatják, és arra használják, hogy megmondják az Arduino-nak, hogy mi csatlakozik és hol, valamint a programban esetleg esetlegesen esetlegesen felmerülő változók inicializálására szolgál.

A második a hurok. Ez minden Arduino program lényege. Amikor az Arduino fut, a beállítási funkció befejezése után a hurok végigfut az összes kódot, majd végezze el újra az egészet - mindaddig, amíg vagy az áramkimaradás meg nem történik, vagy a reset kapcsoló nem működik sajtolt. A teljes hurok kitöltéséhez szükséges idő a benne szereplő kódtól függ. Írhat olyan kódot, amely azt mondja: „várjon 6 órát”, ebben az esetben a hurok nem fog megismétlődni nagyon gyakran.

Íme egy gyors állapotdiagram, amely szemlélteti:

arduino áramköri lap

A Blink program vizsgálata

Vessen egy pillantást a Blink programkódra, és keresse meg a beállítási és a hurok funkciókat.

Itt van a beállítás:

érvénytelen beállítás () { // inicializálja a digitális tűt kimenetként. // A 13-as pin-hez LED van csatlakoztatva a legtöbb Arduino táblán: pinMode (13, OUTPUT); }

A vonalak kezdődik // egyszerűen megjegyzés, hogy elmagyarázzák a kódot egy emberi olvasónak, és nem töltik fel őket az Arduino-ba. Tehát valójában csak egy beállítási kód van ebben az Arduino alkalmazásban. Ez a sor azt mondja: „Állítsa a 13. tűt kimeneti üzemmódra”. Ne felejtsd el, a 13. ábra a beépített LED.

Akkor ott van a hurok:

void loop () { digitalWrite (13, HIGH); // kapcsolja be a LED-et. késleltetés (1000); // várj egy percet. digitalWrite (13, LOW); // kapcsolja ki a LED-et. késleltetés (1000); // várj egy percet. }

Az egyes sorok végén található megjegyzések meglehetősen jól magyarázzák a funkciójukat. A HIGH és LOW a digitális kimenet be- és kikapcsolt állapotára utal - a mi esetünkben a LED. A kódba valóban BE vagy KI is írhat, mindkettő szinonimája (ugyanúgy, mint a 0 és az 1). Késleltetés azt mondja az Arduino-nak, hogy várjon egy kicsit, ebben az esetben 1000 milliszekundum (vagy 1 másodperc).

Végül, egy megjegyzés az itt használt programozási nyelvről. Vegye figyelembe, hogy mind a beállítási, mind a hurok funkcióknak megvan a szó üres előttük. Ez egy speciális szó semmi, mert a függvény semmit nem ad vissza amikor hívják - egyszerűen futtatja a benne található kódot. Jelenleg hagyjuk abba az állítást, mondván, hogy a függvény kódblokkját göndör zárójelek zárják be {}, és hogy minden kódsornak a végével kell végződnie; pontosvessző.

Próbáljon megváltoztatni az alapprogramot oly módon, hogy a pontos késleltetési értékeket nagyobbra vagy kisebbre változtatja. Nézze meg, hogy mekkora kicsivel tudja leszerezni, mielőtt a villogás már nem válik észre. Döntse ki, melyik értéket változtassa meg, hogy hosszabb ideig maradjon, vagy hosszabb ideig maradjon. Próbáljon hozzá néhány további digitalWrite és késleltetési utasítást a hurok funkcióhoz, hogy összetettebb villogó mintát hozzon létre, mint például a morzes kód az SOS-hoz. Ha van egy hangjelzője, próbálja meg csatlakoztatni azt a 13-os és a GND-érintkezőkhöz is (tipp: a piros huzal 13-ra megy, fekete a földre).

Ez minden mára. Legközelebb még néhány LED-et hozzáadunk, és saját kezűleg megírjuk saját alkalmazásunkat. Mint mindig, nagyon megbecsülte a megjegyzéseket és a megosztásokat. Nem tudom elképzelni, hogy bármilyen probléma merülne fel a mai hivatkozott kóddal, de ha megpróbálta kissé módosítani a kódot, és hibákat vagy váratlan viselkedést tapasztal, nyugodtan tegye meg a megjegyzésekben, és megnézzük, tudunk-e megbirkózni rajta együtt.

James rendelkezik mesterséges intelligencia BSc-vel, CompTIA A + és Network + tanúsítvánnyal rendelkezik. A MakeUseOf vezető fejlesztője, és szabadidejét VR paintballon és társasjátékokon játszik. Gyerekkora óta épít PC-ket.