První kroky s Arduino Bližší pohled na desku s obvody a strukturu programu

  • Lesley Fowler
  • 0
  • 2754
  • 188
reklama

Naposledy jsem vás nechal nastavit Začínáme se sadou Arduino Starter Kit - Instalace ovladačů a nastavení desky a portu Začínáme se sadou Arduino Starter Kit - Instalace ovladačů a nastavení desky a portu Takže jste si koupili sami Arduino startovací sada a možná i nějaké další náhodné cool komponenty - co teď? Jak vlastně začnete s programováním této věci Arduino? Jak to nastavíte ... vaše Arduino pro práci s Mac nebo Windows a po nahrání jednoduché testovací aplikace, která blikala zabudovanou LED diodou. Dnes vám vysvětlím kód, který jste nahráli, strukturu softwaru Arduino a trochu více o elektronických bitech na samotné desce.

Tento článek je součástí úvodu do série Arduino. Další články v této sérii jsou:

  • Co je Arduino a co s ním můžete dělat Co je Arduino a co s ním můžete dělat? Co je Arduino a co s ním můžete dělat? Arduino je pozoruhodné malé elektronické zařízení, ale pokud jste ho nikdy předtím nepoužívali, tak co přesně jsou a co s ním můžete dělat? ?
  • Co je to startovací souprava Arduino a co obsahuje? Co je součástí sady Arduino Starter Kit? [MakeUseOf vysvětluje] Co je zahrnuto v Arduino Starter Kit? [MakeUseOf vysvětluje] Předtím jsem zde na MakeUseOf představil open-source hardware Arduino, ale budete potřebovat více než jen samotného Arduina, abyste z něj něco vytvořili a abyste mohli začít. Arduino „startovací sady“ jsou…
  • Více cool komponentů ke koupi s vaší startovací sadou 8 Další cool komponenty pro vaše Arduino projekty 8 více cool komponentů pro vaše Arduino projekty Takže uvažujete o získání startovací sady Arduino, ale přemýšlíte, jestli budou nějaké základní LED diody a rezistory natolik, aby vás zaměstnával celý víkend? Asi ne. Zde je dalších 8…
  • Začínáme se sadou Arduino Starter Kit - Instalace ovladačů a nastavení desky a portu Začínáme se sadou Arduino Starter Kit - Instalace ovladačů a nastavení desky a portu Začínáme se sadou Arduino Starter Kit - Instalace ovladačů a nastavení desky a Port Takže jste si koupili startovací soupravu Arduino a možná i nějaké další chladné komponenty - co teď? Jak vlastně začnete s programováním této věci Arduino? Jak to nastavíte ...

Hardware

Podívejme se blíže na to, co má Arduino Uno, pokud jde o kousky na desce plošných spojů.

Zde je zvětšený diagram, na který lze odkazovat:

  • Nahoře je 14 digitálních vstupních / výstupních pinů (číslovaných 0-13). Jedná se o nejvšestrannější kolíky na vašem Arduino a mohou fungovat jako vstup nebo výstup a budou tvořit jádro vašich projektů. Digitální znamená, že signál, který tyto piny mohou zapisovat nebo číst, bude zapnutý nebo vypnutý.
  • 6 z těchto digitálních kolíků, které jsou označeny znakem vlnovky ~ jsou schopni dělat to, co se nazývá Pulse Width Modulation. Nejsem elektrotechnik, takže se nebudu stydět tím, že vysvětlím vědu za tím, ale pro vás a já to znamená, že můžeme poskytnout řadu výstupních úrovní - například ztlumení LED nebo řízení motoru při různých rychlostech.
  • Pin 13 je speciální v tom, že má vestavěnou LED. Toto je pouze pro pohodlí a testování. Tuto vestavěnou LED můžete použít, jako tomu bylo v případě aplikace Blink, jednoduše výstupem na pin 13 - nebo ho lze použít jako standardní I / O pin.
  • Vpravo dole je 6 analogových vstupních pinů. Tyto hodnoty budou číst hodnotu analogových senzorů, jako jsou měřiče světla nebo proměnné rezistory.
  • Vlevo dole vedle analogových vstupních pinů jsou napájecí kolíky. Jediné, o co se opravdu musíte starat, jsou zemní kolíky (GND), 3,3 V a 5 V elektrické vedení.
  • Nakonec jediným přepínačem nalezeným na Arduinu je resetovací přepínač. Tím se restartuje jakýkoli program, který má ve své paměti.
  • Arduino má nastavenou velikost paměti a pokud je váš program příliš velký, kompilátor vám dá chybu.

Struktura Arduino programu

Každý program Arduino se skládá z nejméně dvou funkcí (pokud nevíte, co je funkce, přečtěte si můj základní programovací tutoriál, část 2 - příkazy funkcí a řízení Absolutní základy programování pro začátečníky (část 2) Absolutní základy programování pro začátečníky (část 2) V části 2 našeho průvodce absolutními začátečníky pro programování se budu zabývat základními funkcemi, návratovými hodnotami, smyčkami a podmínkami. Před vyřešením tohoto problému si přečtěte část 1. , kde jsem vysvětlil ... a část 1, kde jsme diskutovali proměnné Základy počítačového programování 101 - Proměnné a datové typy Základy počítačového programování 101 - proměnné a datové typy Po představení a mluvení o objektově orientovaném programování před a kde přijde jeho jmenovec od, myslel jsem si, že je čas, abychom prošli absolutními základy programování v nemanuánově specifickém způsobu. Tohle… před pokračováním).

První je funkce nastavení. Toto se spouští zpočátku - pouze jednou - a používá se sdělit Arduino, co je připojeno a kde, a také inicializuje všechny proměnné, které byste mohli ve svém programu potřebovat.

Druhou je smyčka. Toto je jádro každého programu Arduino. Když je Arduino spuštěno, po dokončení funkce nastavení bude smyčka procházet celým kódem, pak znovu proveďte celou akci - dokud nebude buď ztracena energie nebo nestisknete resetovací spínač. Doba potřebná k dokončení jedné plné smyčky závisí na obsaženém kódu. Můžete napsat nějaký kód, který říká “počkejte 6 hodin”, v takovém případě se smyčka nebude opakovat příliš často.

Zde je rychlý stavový diagram, který ilustruje:

Zkoumání Blink programu

Vraťte se zpět na programový kód Blink a určete funkce nastavení a smyčky.

Zde je nastavení:

void setup () // inicializuje digitální pin jako výstup. // Pin 13 má na většině desek Arduino připojenou LED: pinMode (13, OUTPUT); 

Řádky, které začínají // jsou prostě komentáře, které vysvětlují kód lidskému čtenáři a nedostanou se do Arduina. Ve skutečnosti v této konkrétní aplikaci Arduino existuje pouze jeden řádek instalačního kódu. Tato linie říká “Nastavte pin 13 do výstupního režimu”. 13, pamatujte, je vestavěná LED.

Pak je tu smyčka:

void loop () digitalWrite (13, HIGH); // nastavit zpoždění LED (1000); // počkejte na druhý digitalWrite (13, LOW); // nastavit zpoždění vypnutí LED (1000); // počkejte chvilku

Komentáře na konci každého řádku kódu vysvětlují jejich funkci docela dobře. VYSOKÉ a NÍZKÉ se vztahují na stav ZAP a VYP digitálního výstupu - v našem případě na LED. Ve skutečnosti byste také mohli zapsat nebo vypnout kód, oba jsou synonymní (stejně jako 0 a 1). Zpoždění v tomto případě řekne Arduinu, aby počkal 1000 milisekund (nebo 1 sekunda).

Konečně poznámka o použitém programovacím jazyce. Všimněte si, že funkce nastavení i smyčky mají slovo neplatný před nimi. To je zvláštní slovo pro nic, protože funkce nevrací nic když se volá - jednoduše spustí kód obsažený uvnitř. Prozatím to necháme tak, že řekneme, že blok kódu funkce je uzavřen složenými závorkami a že každý řádek kódu musí končit znakem; středník.

Zkuste nějakým způsobem změnit základní program změnou přesných hodnot zpoždění na něco většího nebo menšího. Podívejte se, jak malý je možné jej snížit, než již blikání již není patrné. Vypracujte, jakou hodnotu změnit, aby bylo možné zůstat déle, nebo zůstat déle. Zkuste přidat do funkce smyčky některé další příkazy digitalWrite a delay a vytvořte složitější blikající vzor, ​​jako je morseový kód pro SOS. Pokud máte bzučák, zkuste jej připojit také na piny 13 a GND (nápověda: červený vodič jde na 13, černý k zemi).

To je pro dnešek vše. Až příště přidáme další LED diody a napíšeme naši vlastní aplikaci od nuly. Jako vždy, komentáře a sdílení hodně ocenil. Nedokážu si představit, že byste měli s kódem, o kterém se dnes mluví, nějaké problémy, ale pokud jste se pokusili kód mírně upravit a setkáváte se s chybami nebo neočekávaným chováním, klidně jej vložte do komentářů a uvidíme pokud to dokážeme společně projít.




Bisher hat noch niemand einen Kommentar zu diesem Artikel abgegeben.

O moderní technologii, jednoduché a cenově dostupné.
Váš průvodce ve světě moderních technologií. Naučte se, jak používat technologie a pomůcky, které nás každý den obklopují, a naučte se, jak objevovat na internetu zajímavé věci.