Lekce 2 - První program
15.12.2012 16:41
V předchozím díle jsme nainstalovali ovladače pro Arduino a připojili ho k počítači. Zkompilovali jsme také náš první program, který však neobsahoval žadné příkazy, takže naše Arduinko nedělalo zatím nic.
V dnešní lekci si pro začátek, aby jsme nemuseli přidavat prozatím nějaké externé součástky, rozblikáme LED diodu. Tato je již na desce integrována a připojena na digitální pin č.13.(viz obrázek - v červeném kolečku)
A nyní k vlastnímu psaní programu. Již minule jsem si nastínili, že k běhu programu jsou potřeba funkce setup() a loop(). Program na svém začátku nejprve vykoná všechny příkazy ve funkci setup() a to jako nastavení jednotlivých pinu, inicializace displeje apod. a násladně ve smyčce vykovává přikazi ve funkci loop().
Tyto funkce již máme z minulé lekce v okně programu naspané a nyní si vysvětlíme další funkce, které budou potřeba k našemu programu a to rozblikání diody.
kód programu
int led = 13; //deklarujeme proměnou "led" a dosadíme do ní číslo 13
Asi jste si na první pohled všimli, že si můžete k programu pro větší přehlednost přidávat komentáře za dvojté lomítko. Programový kompiler si potom textu nevšímá. Komentář můžete také dát do bloku mezi sekvenci znaku "/*" a "*/".
pinMode(pin, INPUT/OUTPUT)
digitalWrite(pin, HIGH, LOW)
delay(milisekund)
———
ZpětDiskusní téma: Lekce 2 - První program
Datum | 06.12.2021 |
---|---|
Vložil | Josef |
Titulek | sloučení 2 programů |
Mám dva funkční (krátké) programy .ino pro Arduino MEGA a potřebuji je sloučit do 1 programu, což se mi nedaří. Snažil jsem se, zatím bezvýsledně, najít nějaký postup (polopatický s ohledem k mému věku a mým znalostem). Prosím, poradíte mi někdo? Děkuji.
———
Datum | 06.01.2021 |
---|---|
Vložil | Mili-s |
Titulek | Perfektní |
Velmi hezké a přehledné stránky , to už se dneska jen tak nevidí.
———
Datum | 05.02.2015 |
---|---|
Vložil | Milan |
Titulek | problém |
Ahoj po nahrání mi to napíše toto
avrdude: stk500_getsync(): not in sync: resp=0x00
co s tím
———
Datum | 14.03.2015 |
---|---|
Vložil | xxx |
Titulek | Re: problém |
pokud ti to píše na ARDUINO MINI PRO tak je to problem s resetem
———
Datum | 02.02.2014 |
---|---|
Vložil | Tomas |
Titulek | Nefunguje mi to |
Někde je chyba a nevím kde. Zřejmě někde v nastavení nebo kde. Není problém opsat takový kód. Po kompilaci mi to hlásí:
sketch_feb02a.ino: In function 'void loop()':
sketch_feb02a:8: error: 'led' was not declared in this scope
sketch_feb02a:9: error: 'deLay' was not declared in this scope
———
Datum | 02.02.2014 |
---|---|
Vložil | Tomas |
Titulek | Re: Nefunguje mi to |
Původně jsem instalaci z Arduina.CC jako instalator. Teď jsem si stáhl zip. chybu s led to nehlásí a u delay byl problém stím, že jsem napsal deLay a ne delay. V programu je deLay, ale mě to chodí pouze s delay...zvláštní
———
Datum | 26.02.2014 |
---|---|
Vložil | EYYE |
Titulek | Re: Re: Nefunguje mi to |
Ono to vypadá jako velké "L", ale ve skutečnosti se jedná o malé "l". Font použitý na stránkách mate... ;)
———
Datum | 10.07.2014 |
---|---|
Vložil | ljljn |
Titulek | Re: Nefunguje mi to |
Arduino se programuje v C a C je case sensitive což znamena že delay != deLay. Dále pak bych řekl že je špatně to int led = 13; podle me by tam melo byt const int led = 13;
———
Datum | 07.12.2014 |
---|---|
Vložil | krtek |
Titulek | Re: Re: Nefunguje mi to |
Není to přímo C, ale Arduino Language, což je jazyk odvozený z Wiringu. C-čku se ale každopádně dost podobá.
———
Datum | 27.05.2015 |
---|---|
Vložil | gilhad |
Titulek | Re: Re: Re: Nefunguje mi to |
Wiring je framework - cili v podstate chytre sestavena sada knihoven. Arduino se programuje v Ccku a vyuziva takoveto knihovny, proto prvni programy vypadaji "skoro jako jiny jazyk" protoze to jsou pouze volani funkci. Ale prekladat se to da cistym prekladacem Ccka (pro avr, pochopitelne, ne pro x86) a taky to tak bezne delam.
———