Tijekom pandemije COVID-19, e-radionica.com nastavlja s normalnim radom. Sve mjere opreza se redovno poduzimaju te su naručeni paketi sigurni. Opcija dostave uslugama Hrvatske Pošte i osobno preuzimanje privremeno su onemogućeni iz sigurnosnih razloga.

Arduino IDE i prvi kod

Uvod

U ovome tutorijalu pokazati ćemo kako podesiti postavke Arduino IDE, kako "kompajlati", a kako "uploadati". Osim toga, pokrenuti ćemo i naš prvi kod blink, koji se nalazi u Arduino Examples.

Početne postavke

Prilikom prvog pokretanja Arduino IDEa postavke su default i potrebno ih je definirati s obzirom na Croduino/Arduino pločicu koju koristimo. Ovo neće biti teško, radi se o 2-3 postavke, ovisno o verziji Arduino IDEa koju koristimo. Također, potrebno ih je postaviti samo jednom za istu pločicu. Croduino Basic i Croduino Basic2 koriste ATmega328 i ovo je ispravan odabir postavki za njih:

1. Tools - Board: - Arduino Nano

Untitled
*NAPOMENA: na nekim forumima i komentarima pronašli smo kako Croduino pločicu treba postaviti na Arduino Duemilanove, što nije potpuno neispravno. Međutim, s tim postavkama nećete moći koristiti analogne pinove A6 i A7.

2. Tools - Processor: - ATmega328

Untitled
Starije verzije Arduino IDEa nemaju kategoriju "Processor" već isti odabirete u kotegoriji "Boards". Tako, za Croduino, pod "Boards" odabirete "Arduino Nano w/ ATmega328".

3. Tools - Port - COM?

Untitled
*NAPOMENA: "?" predstavlja broj COM porta koji je OS dodjelio pločici.

Kako ga koristiti?

Arduino software (IDE) je open-source iliti programski jezik otvorenog koda koji služi za pisanje koda i upload na Arduino pločice. IDE stoji za Integrated development environment.

Sam IDE se sastoji od više dijelova: izbornika, trake s brzim pristupom, tekstualnog editora te konzole. U nastavku ćemo ukratko o nabrojanom.

Untitled
Za sada ne bih posebno objašnjavao padajući izbornik, njega ćemo ionako koristiti samo u posebnim slučajevima koji ionako imaju svoje zasebe tutorijale.

Traka brzog izbornika
Na traci brzog izbornika nalaze se prečice za naredbe koje najčešće i koristimo. Pa krenimo redom:

play Verify
Provjerava eventualne greške u kodu.

export Upload
Provjerava kod i uploada ga na pločicu.
Ako koristite vanjski programer držite tipku Shift dok klikate na ikonu. Tekst "Upload" promjeniti će se u "Upload using Programer".

new New
Kreira novi sketch.

open Open
Otvara izbornik sa svim sketchevima koji se nalazi u Arduino mapi "Examples" i "Sketchbook"

save Save
Sprema sketch u Arduino mapu "Sketchbook"

serial_monitor Serial Monitor
Otvara prozor Serial Monitora, o kojemu ćemo kasnije u tutorijalu.

Tekstualni editor
Tekstualni editor je prostor u kojem pišemo kod našeg sketcha.

Konzola
Konzola nam prikazuje neke osnovne podatke o sketchu napisanom u tekstualnom izborniku.

Untitled

Blink je program s kojim ćemo testirati jesmo li ispravno napravili sve korake do sada: instalaciju Arduino IDEa, instalaciju drivera i podeševanje softwarea. Kod za blink nalazi se u primjerima (Examples) koji dolaze s Arduino IDEom pa ćemo prvo učitati kod.

Sketch za blink
Naime, na Croduino pločici nalazi se integrirana ledica na pinu 13, to je narančasta LEDica i nalazi se odmah ispod navedenog pina. Praktična je upravo iz razloga što ne moramo spajati neku vanjsku LED dioda za ovakva ili slična testiranja. Sketch koji će nam se otvoriti izgleda kao na slici dolje. Preostalo nam je samo uploadati ga na našu pločicu, a to možemo napraviti preko Upload ikone koju smo predstavili nešto ranije.

Untitled
Slika pokazuje proces uploadanja sketcha na pločicu. Postupak je da se prvo obavi provjera ("Compililing sketch"), a tek ako je sve uredu, i upload.
Po završetku postupka, ako je sve prošlo uredu pojaviti će se poruka "Done uploading." i narančasta ledica će zablinkati.

Errori i kako ih čitati

Arduino IDE ni nema baš najbolje rješen errorlog na svijetu, ali neke stvari opet možemo očitati. Prikazati ćemo što i kako iz primjera na slici ispod.

Untitled
Prvo što primječujemo je kako je konzola promjenila boju u narančastu, što je zna da ili sketch nije dobro napisan ili program ne može uspostaviti vezu s pločicom. U ovom slučaju očito je da se radi o pogreški u kodu. Konzola nam govori gdje se nalazi greška ("In function `void loop()`"), čak nam oboja i liniju koda koja nije dobra u tekstualnom editoru. Neke verzije ovog programa nam ne daju ove podatke, ali svejedno ih možemo očitati i to iz "Blink:25" dijela errora. Gdje Blink predstavlja ime sketcha, a 25 liniju koda na kojoj se nalazi greška.
Osim gdje se nalazi greška u kodu, ponekad dobijemo informaciju i što je greška. U ovom primjeru to je linija `high` was not declared in this scope, odnosno računalo ne prepoznaje varijablu high. Ako ste se već igrali Arduinom lako ćete prepoznati da je ispravno ime varijable HIGH. Ako ne, pratite dalje naše tutorijale i video lekcije i brzo ćete svladati ovakve prepreke.

Imam problem

Napravili ste sve kako pokazuju tutorijali, ipak ne možete uploadati kod na vašu pločicu. Dobivate error kao na slici dolje:

Untitled
Probajte provjeriti sljedeće: pod Tools - Port nalazi li vam se još uvijek COM port koji vam je dodjeljen prilikom instalacije drivera? Hm, vjerovatno ne. Frustrirajuće, pogotovo što ista pločica nekada radi nekada ne, a sigurni ste da su i driveri i USB kabel dobri.
Radi se o tome da neke verzije Arduino IDE softwarea nisu stabilne, primjerice ova 1.6.4 koju koristimo u tutorijalu. Sigurno će se ovaj bug ispraviti ubrzo novijim verzijama softwarea i drivera, do onda možete koristiti neke od starijih stabilnih verzija.
Ako pak koristite Mac OSX s ovom verzijom Arduino IDE softwarea, svakako deinstalirajte drivere koji dolaze s navedenim OSom. Kako, možete pronaći u ovom tutorijalu.

2 thoughts on “Arduino IDE i prvi kod”

  • Filip

    Pozdrav,
    Imam vas Croduino Basic2 i nemogu nikako uploadati kod na plocicu (koristio sam za test Blink). Probao sam na puno settingsa, no nikako da proradi.

    Sa ovim osnovnim postavkama dobivam error:
    Arduino: 1.8.5 (Windows 7), Board: "Arduino Nano, ATmega328"

    WARNING: Category '' in library EEPROM is not valid. Setting to 'Uncategorized'
    WARNING: Category '' in library SPI is not valid. Setting to 'Uncategorized'
    WARNING: Category '' in library SoftwareSerial is not valid. Setting to 'Uncategorized'
    WARNING: Category '' in library Wire is not valid. Setting to 'Uncategorized'
    Warning: platform.txt from core 'Arduino AVR Boards' contains deprecated recipe.ar.pattern="{compiler.path}{compiler.ar.cmd}" {compiler.ar.flags} {compiler.ar.extra_flags} "{build.path}/{archive_file}" "{object_file}", automatically converted to recipe.ar.pattern="{compiler.path}{compiler.ar.cmd}" {compiler.ar.flags} {compiler.ar.extra_flags} "{archive_file_path}" "{object_file}". Consider upgrading this core.
    Sketch uses 1030 bytes (3%) of program storage space. Maximum is 30720 bytes.
    Global variables use 9 bytes (0%) of dynamic memory, leaving 2039 bytes for local variables. Maximum is 2048 bytes.
    avrdude: Expected signature for ATmega328P is 1E 95 0F
    Double check chip, or use -F to override this check.
    Wrong microcontroller found. Did you select the right board from the Tools

    Ovo je probano sa i novijim verzijama i starijim kao sto prikazano u tutorialu.
    (oboje vode do istog rezultata).

    Molim pomoc.

    LP,
    Filip

    Reply
    • David Zovko
      David Zovko 12.06.2018 at 10:12

      Pozdrav Filipe, molim te da postaviš pitanje na našem forumu pa tamo brzo stiže odgovor: http://forum.e-radionica.com/hr/viewforum.php?f=7

      Reply
Leave a Reply