ELEKTROTE NIČKA KOLA „STARI GRA “ ___________________ ____________________________ ________
MATURSKI RAD Predmet: Mikro rocesori sa elementima programiranj Smer: Elektrotehničar automatike
RAKTIČAN RAD: 1. ealizacija Arduino platforme 2. ealizacija šild modula 3. Primeri koda za Arduino
Komisija:
Kandidat: Tomić leksandar
Predsednik komisije Član komisije
Datum prijave
Član komisije
Datum odbrane
U Beogradu, 2015.god
������������� ����� ������ �����
�������� ���
Zahvaljujem se na pomoći i saradnji profesorki Aleksandri Marčetić. Zahvaljujem na predloženoj temi i korisnim sugestijama tokom izrade ovog maturskog rada.
Sadržaj 1. 2. 3. 4. 5. 6. 7. 8.
����������������������������������������� ���������������������������������� �������������������������������� ��������������������������� ��������������������������������� ������������������� � Šta je to Arduino? �������������������������� ����������������������������������������� �������������������������������� ���������������������������������� ����������������������������� ������������������������������ ��������������� � Kako je sve po čelo ����������������������������� ����������������������������������������� �������������������������������� ��������������������������������� ����������������������������� ��������������������������������� �������������������������������� ���������������� � Hardver ���������������������������� ����������������������������������������� �������������������������������� ���������������������������������� ����������������������������� ������������������������ ���������� � Tehnička specifikacija ���������������������������� ������������������������������������������ �������������������������������� �������������������������������� ����������������������������� ������������������������������ ��������������� � Razvojno okruženje ���������������������������� ���������������������������������������� ���������������������������������� ������������������������������ ���������� � Zadatak 1. Realizacija Arduino platforme �������������������������� ������������������������������������������ �������������������������������� ��������������������������������� ������������������� ���� �� Zadatak 2. Realizacija šild modula ���������������������������� ������������������������������������������ �������������������������������� �������������������������������� ����������������� ��� �� Zadatak 3. Primeri koda za Arduino ���������������������������� ����������������������������������������� �������������������������������� ���������������������������������� ����������������������������� ���������������������� �������� �� 8.1. Primer „Semafor“ ���������������������������� ������������������������������������������� �������������������������������� �������������������������������� ������������������������ ���������� �� 8.2. Primer „Plivajuće svetlo“ ����������������������������� ������������������������������������������� �������������������������������� �������������������������������� ����������������� ��� �� 8.3. Primer „Merenje temperature“ ����������������������������� ������������������������������������������� ���������������������������������� ���������������������������������� �������������������������� �������������������������������� ���������������������������� �������� �� 9. Zaključak ����������������������������� ���������������������������������������� ���������������������������������� ���������������������������������� ���������������������������� �������������������������������� �������������������������� �������� �� 10. Literatura ��������������������������
�
������������� ����� ������ �����
�������� ���
Slika 1 – Arduino Uno mikrokontrolerski razvojni sistem
1. Šta je to Arduino? Arduino je open sors (engl. open source) razvojni sistem, elektronska-ra čunarska platforma nastala 2005. god. na Ivery univerzitetu u Italiji. Arduino sistem se koristi za upravljanje drugim sistemima i modulima. Hardver čini jednostavan dizajn Arduino plo če koja sadrži Atmelov AVR mikrokontroler i prate će ulazno-izlazne komponente. Razvojno okruženje za Arduino sastoji se od kompajlera i bootloadera koji se nalazi na samoj Arduino ploči. Programiranje Arduina se obavlja programskim jezikom zasnovanim na Wiring jeziku. U suštini to je C++ programski jezik sa mnogo olakšica i predefinisanih funkcija krajnjim korisnicima odnosno programerima. Integrisano razvojno okruženje IDE (engl. Integrated Development Environment ) zasnovano je na Processing-u.
2. Kako je sve počelo Otkako je Arduino projekat zapo čet 2005. god., preko 500.000 komada je prodato do danas. Pretpostavlja se da broj prodatih klonova nadmašuje cifru od 1.000.000 komada. Arduino bordovi i njegove varijante su preplavile tržište. Njegova popularnost je sve ve ća i veća i sve više ljudi prepoznaje zapanjuju ći potencijal ovog neverovatnog projekta otvorenog koda kao i njegovu sposobnost da se brzo i lako kreiraju specijalizovani projekti sa relativno skromnim poznavanjem programiranja. Najve ća prednost Arduino mikrokontrolerske razvojne platforme je u jednostavnosti koriš ćenja, gde čak i ljudi bez programerskog iskustva mogu da savladaju savladaju osnove i stvaraju stvaraju sopstvene projekte u relativno kratkom vremenskom periodu.
�
������������� ����� ������ �����
�������� ���
3. Hardver Arduino 2009 sistem se sastoji od Atmel 8-bitnog AVR mikrokontrolera i drugih komponenti koje omogu ćavaju jednostavno programiranje i povezivanje sa drugim elektronskim sklopovima i sistemima. Originalni Arduino sistemi poseduju ATmega AVR čipove, linearni regulator za 5V i kristalni oscilator na 16MHz. Lako spajanje novih modula i priključaka je ključna stvar kod Arduina. Dodaci – moduli za Arduino se nazivaju šildovima (engl. shield ). ). Kupuju se gotovi ili ih sami pravimo po potrebi. Svrha šildova je proširenje funkcionalnih mogu ćnosti. Najpoznatiji šildovi su: GPS, GSM, bluetooth, ethernet, LCD ekran, RFID, relay, itd. Gotovi Arduino bordovi dolaze sa sopstvenim bootloaderom koji omogućava upload napisanih programa u fleš memoriju Arduina. Ranije verzije Arduino sistema su koristile serijski port RS-232 za programiranje i komunikaciju, komunikaciju, a noviji noviji Arduino sistemi danas rade preko USB-a.
4. Tehnička specifikacija Mikrokontroler Radni napon Ulazni napon (preporučljivo) Ulazni napon (granične vrednosti) Digitalni I/O priključci Analogni ulazni priljučci DC struja po I/O priključku DC struja za 3.3V priključak Fleš Memorija SRAM EEPROM Radni takt Dužina Širina Težina
ATmega328P 5V 7-12V 6-20V 14 (od kojih 6 obezbeđuju PWM izlaz) 6* 40 mA 50 mA 32 KB (ATmega328P) od čega je 0.5 KB rezervisano za bootloader 2 KB (ATmega328P) 1 KB (ATmega328P) 16 MHz 68.6 mm 53.4 mm
25 gr
5. Razvojno okruženje Arduino IDE je pisan u Javi i može se koristiti na programskim platformama kao što su Windows, Linux i Mac. Neke novije verzije Linuxa dolaze sa ve ć preinstaliranim Arduino IDE softverom. Razvojno okruženje se potpuno besplatno može preuzeti sa oficijalne stranice Arduino projekta i nema nikakvih ograni čenja. Arduino IDE je zamišljen i napravljen tako da približi približi programiranje onima koji nisu experti ili se nikada nisu sreli sa programiranjem. Arduino IDE proverava ispravnost napisanog koda, vrši prevo đenje u hex fajl i upload na Arduino sistem. Program napisan za Arduino naziva se ske č (engl. sketch). Sintaksa Arduinovog IDE-a sli čna je sintaksi programskog jezika C++. *Analogni ulazi A0-A5 se mogu koristiti i kao digitalni ulazi/izlazi
�
������������� ����� ������ �����
�������� ���
Slika 2– Arduino razvojno okruženje (IDE)
Sve Arduino platforme ve ć imaju LED diodu i otpornik izme đu pina 13 i mase i koriste se za testiranje sistema ili za pravljenje prvih koraka. Upaliti LED diodu je prvi ili HELLO WORLD zadatak na Arduno platformi. Primer uključivanja i isključivanja LED diode na pinu13
int led = 13;
// LED dioda na pinu 13 // ovom komandom dodeljujemo pinu ime
void setup() { pinMode(led, pinMode (led, OUTPUT); }
// izvršava se samo jednom do sledećeg reseta // podešavamo da pin 13 bude digitalni izlaz
void loop() { digitalWrite(led, digitalWrite (led, HIGH); delay(1000); delay (1000); digitalWrite(led, digitalWrite (led, LOW); delay(1000); delay (1000); }
// izvršava se beskonačan broj puta // uključi LED diodu // vreme trajanja pauze (1000ms) // isključi LED diodu // vreme trajanja pauze (1000ms)
�
������������� ����� ������ �����
�������� ���
6. Zadatak 1. Realizacija Arduino platforme Za potrebe li čne edukacije odlu čio sam da sam napravim Arduino Duemilanove (2009) razvojnu platformu. Izabrao sam da pravim Arduino Duemilanove koji će kasnije biti unapređen u Arduino UNO, promenom firmwera. Arduino referentni dizajn hardvera se distribuira pod CC licencom i dostupan je na zvani čnom sajtu www.arduino.cc www.arduino.cc . . Raspored komponenata i fajlova neophodnih za proizvodnju pojedinih verzija je tako đe na raspolaganju. Izvorni kod za razvojno okruženje i biblioteke su dostupne i distribuiraju se pod GPLv2 licencom. Pločica sa štampanim vezama je kupljena na www.kupindo.com www.kupindo.com a komponente u www.kelco.rs i www.comet.rs
Spisak komponenata: Part Value Device Package Description ----------------------------------------------------------------------------------------------------------------------C1 100n C-EU C0805RND CAPACITOR, European symbol C2 22p C-EU C0805RND CAPACITOR, European symbol C3 22p C-EU C0805RND CAPACITOR, European symbol C4 100n C-EU C0805RND CAPACITOR, European symbol C5 100n C-EU C0805RND CAPACITOR, European symbol C6 100u CPOL-EUD PANASONIC_D POLARIZED CAPACITOR, European symbol C7 100u CPOL-EUD PANASONIC_D POLARIZED CAPACITOR, European symbol C8 100n C-EU C0805RND CAPACITOR, European symbol C9 100n C-EU C0805RND CAPACITOR, European symbol C10 100n C-EU C0805RND CAPACITOR, European symbol C11 100n C-EU C0805RND CAPACITOR, European symbol C12 100n C-EU C0805RND CAPACITOR, European symbol C13 100n C-EU C0805RND CAPACITOR, European symbol D1 DIODE-SMB SMB DIODE F1 500mA L-EUL1812 L1812 INDUCTOR, European symbol IC1 ATMEGA8 AT90S4433P DIL28-3 MICROCONTROLLER IC2 FT232RL FT232RL SSOP28 IC4 MC33269D-5.0 MC33269D-5.0 DPACK Adjustable Output Low Dropout Voltage Regulator 800 mA IC5 LM358D LM358D SO08 OP AMP also LM158; LM258; LM2904 ICSP ICSP PINHD-2X3 2X03 PIN HEADER J1 PINHD-1X8 1X08 PIN HEADER J2 PINHD-1X6 1X06 PIN HEADER J3 PINHD-1X8 1X08 PIN HEADER L LED0805ROUND 0805RND LED POWER PINHD-1X6 1X06 PIN HEADER PWR LED0805ROUND 0805RND LED Q2 16MHz CRYTALHC49S HC49/S CRYSTAL R1 10k R-EU_ R0805RND RESISTOR, European symbol R2 100_NM R-EU_ R0805RND RESISTOR, European symbol R4 1k R-EU_ R0805RND RESISTOR, European symbol R5 1k R-EU_ R0805RND RESISTOR, European symbol
�
������������� ����� ������ �����
R6 1k R-EU_ R0805RND R7 1k R-EU_ R0805RND R8 1k R-EU_ R0805RND R9 1k R-EU_ R0805RND R10 10k R-EU_ R0805RND R11 10k R-EU_ R0805RND RESET-EN SJ SJ RX LED0805 0805RND S1 10-XX B3F-10XX T1 NDT2955 PMOSSOT223 SOT223 TX LED0805ROUND 0805RND U$1 FIDUCIALMOUNT FIDUCIALMOUNT U$2 FIDUCIALMOUNT FIDUCIALMOUNT U$3 FIDUCIALMOUNT FIDUCIALMOUNT X2 DC21MMX DC21MMX X3 JP4E JP4 X4 PN61729 PN61729
�������� ���
RESISTOR, European symbol RESISTOR, European symbol RESISTOR, European symbol RESISTOR, European symbol RESISTOR, European symbol RESISTOR, European symbol SMD solder JUMPER LED OMRON SWITCH MOS FET LED FIDUCIA-MOUNT FIDUCIA-MOUNT FIDUCIA-MOUNT DC-21MM UMPER BERG USB connector
�
������������� ����� ������ �� ��
Slika 3– Električ na šema
������� ���
�
������������� ����� ������ �����
�������� ���
Slika 4– PCB Dizajn
Slika 5– PCB
�
������������� ����� ������ �����
�������� ���
Slika 6– Faza 1
Slika 7– Faza 2
��
������������� ����� ������ �����
�������� ���
Slika 8– Faza 3
Slika 9 – Faza 4
��
������������� ����� ������ �����
Slika 10– Faza 5, završen Arduino 2009
�������� ���
��
������������� ����� ������ �����
�������� ���
7. Zadatak 2. Realizacija šild modula Razni dodaci za Arduino nazivaju se šildovi i služe za proširenje funkcionalnih mogućnosti. Postoje šildovi za različite namene i njihov broj je iz dana u dan dan sve veći. Za potrebe ove vežbe odlučio sam da napravim jednostavan šild koji će imati mogućnost da objedini nekoliko praktičnih vežbi u jednu celinu. Iskorišćeni su: 7 digitalnih izlaza za LED diode, jedan analogni ulaz za potenciometar, jedan digitalni PWM izlaz za za buzzer, dva digitalna ulaza za tastere i jedan digitalni ulaz za senzor temperature. Elementi Elementi su postavljeni na dvostrani proto-bord i zalemljeni. Svaki ulaz i izlaz ima mogućnost odvajanja od dodatne periferije džamperima po potrebi. Sve Led diode su vezane na masu preko otpornika od 220 oma kako bi se ograničila struja kroz njih.
Spisak Komponenata: Part Value Device Description ----------------------------------------------------------------------------------------------------------------------R0 220 ohm R-EU_ 0.25W RESISTOR, European symbol R1 220 ohm R-EU_ 0.25W RESISTOR, European symbol R2 220 ohm R-EU_ 0.25W RESISTOR, European symbol R3 220 ohm R-EU_ 0.25W RESISTOR, European symbol R4 220 ohm R-EU_ 0.25W RESISTOR, European symbol R5 220 ohm R-EU_ 0.25W RESISTOR, European symbol R6 220 ohm R-EU_ 0.25W RESISTOR, European symbol R7 100 ohm R-EU_ 0.25W RESISTOR, European symbol R8 4.7 K R-EU_ 0.25W RESISTOR, European symbol LED0 LED Diode 3mm Trough Hole LED Red LED1 LED Diode 3mm Trough Hole LED Red LED2 LED Diode 3mm Trough Hole LED Red LED3 LED Diode 3mm Trough Hole LED Red LED4 LED Diode 3mm Trough Hole LED Red LED5 LED Diode 3mm Trough Hole LED Yellow LED6 LED Diode 3mm Trough Hole LED Green Buzzer Speaker 8 ohm PC speaker S1 10-XX B3F-10XX OMRON SWITCH, Key S2 10-XX B3F-10XX OMRON SWITCH, Key J1 PINHD-1X8 1X08 PIN HEADER J2 PINHD-1X8 1X08 PIN HEADER J3 PINHD-1X6 1X08 PIN HEADER J4 PINHD-1X10 1X08 PIN HEADER IC1 -55°C to +125°C DS18B-20 TO-92 P1 22K Linear pot. 6.3mm X1…...X24 JP1……JP24 JUMPER
��
������������� ����� ������ �����
Slika 11 – Elektri č na šema šilda za za Arduino
.
Slika 12– Konač an izgled realizovanog realizovanog projekta
�������� ���
��
������������� ����� ������ �����
Komponenta Pin Tip Led0 0 Digital Out / 1 Digital Out Led1 2 Digital Out / 3 Digital Out Led2 4 Digital Out / 5 Digital Out Led3 6 Digital Out / 7 Digital Out Led4 8 Digital Out / 9 Digital Out Led5 10 Digital Out Buzzer 11 Digital Out Led6 12 Digital Out / 13 Digital Out Key1 A0 Analog in Pot1 (10K) A1 Analog in / A2 Analog in / A3 Analog in Temp.Senzor DS18B20 A4 Analog in / A5 Analog In Key2 Reset Reset Tabela 1 – Pin-aut za Arduino šild
�������� ���
Opis RX* TX PWM PWM PWM
PWM PWM PWM
* Kod programiranja je potrebno ukloniti džamper JP0 (odspojiti Led0 sa RX-a)
��
������������� ����� ������ �����
�������� ���
8. Zadatak 3. Primeri koda za Arduino 8.1. Primer 8.1. Primer „Semafor“ U ovoj vežbi iskorišćene su diode LED5, LED6 i LED7 koje su vezane na digitalnim izlalzima 8, 10 i 12. Kod simulira rad semafora i ustvari je dorađen jednostavni kod sa pocetka (primer Hello World). // Vežba 1 - Semafor int pauza1= 5000; int pauza2= 2000; int crveno= 8; int zuto= 10; int zeleno= 12;
// vreme trajanja pauze (ms) // vreme trajanja pauze (ms) // Led4 na šildu // Led5 na šildu // Led6 na šildu
void setup() { pinMode(crveno, pinMode (crveno, OUTPUT OUTPUT); ); pinMode(zuto, pinMode (zuto, OUTPUT OUTPUT); ); pinMode(zeleno, pinMode (zeleno, OUTPUT OUTPUT); ); } void loop() { digitalWrite(crveno, digitalWrite (crveno, HIGH HIGH); ); delay(pauza1); delay (pauza1); digitalWrite(zuto, digitalWrite (zuto, HIGH HIGH); ); delay(pauza2); delay (pauza2); digitalWrite(zeleno, digitalWrite (zeleno, HIGH HIGH); ); digitalWrite(crveno, digitalWrite (crveno, LOW LOW); ); digitalWrite(zuto, digitalWrite (zuto, LOW LOW); ); delay(pauza1); delay (pauza1); digitalWrite(zuto, digitalWrite (zuto, HIGH HIGH); ); digitalWrite(zeleno, digitalWrite (zeleno, LOW LOW); ); delay(pauza2); delay (pauza2); digitalWrite(zuto, digitalWrite (zuto, LOW LOW); ); }
// UKLJUČI crveno svetlo // vreme trajanja pauze (5000ms) // UKLJUČI žuto svetlo // vreme trajanja pauze (2000ms) // UKLJUČI zeleno svetlo // ISKLJUČI crveno svetlo // ISKLJUČI žuto svetlo // vreme trajanja pauze (5000ms) // UKLJUČI žuto svetlo // ISKLJUČI zeleno svetlo // vreme trajanja pauze (2000ms) // ISKLJUČI žuto svetlo
��
������������� ����� ������ �����
�������� ���
8.2. Primer 8.2. Primer „Plivajuć e svetlo“
U ovoj vežbi LED diode će se paliti jedna za drugom menjaju ći smer od najniže Led diode ka najvišoj i obratno. obratno. Brzina se kontroliše potenciometrom koji koji je vezan na analogni ulaz i preko AD konvertera upravlja diodama rezolucijom od 10 bita (0 do 1023).
// Vežba 2 – Trčeće svetlo byte ledPin[] byte ledPin[] = {0, 2, 4, 6, 8, 10, 12}; int ledPauza; int ledPauza; int ledSmer = 1; int trenutnaLED = 0; unsigned long vremePromene; int potPin int potPin = 1; void setup() { for ( for (int int x=0; x=0; x<7; x++) { pinMode(ledPin[x], pinMode (ledPin[x], OUTPUT OUTPUT); ); } vremePromene = millis millis(); (); }
// Niz LED pinova // Vreme pauze // Smer kretanja svetla // Tretnutno osvetljena LED // Vreme od uključenja // Pin potenciometra // Setovanje pinova // na OUTPUT mod // Inicijalizacija varijable
void loop() { ledPauza = (analogRead (analogRead(potPin) (potPin) + 15); // Čitanje POT1 -> Pauza if ((millis ((millis() () - vremePromene) > ledPauza){ // ledPauza){ // Ako je proteklo vreme promenaLED(); // duže od vremena čekanja vremePromene = millis millis(); (); // Setovanje novog vremena } } void promenaLED() { for ( for (int int x=0; x=0; x<7; x++) { // Gašenje LED0 do LED6 digitalWrite(ledPin[x], digitalWrite (ledPin[x], LOW LOW); ); } digitalWrite(ledPin[trenutnaLED], digitalWrite (ledPin[trenutnaLED], HIGH HIGH); ); // // Uključivanje LED trenutnaLED += ledSmer; // Inkrement za vrednost smer if (trenutnaLED (trenutnaLED == 6) {ledSmer = -1;} if (trenutnaLED (trenutnaLED == 0) {ledSmer = 1;} }
// Promena smera > na LED6 // Promena smera < na LED0
��
������������� ����� ������ �����
�������� ���
8.3. Primer 8.3. Primer „Merenje temperature“ temperature“
U ovoj vežbi koristi se digitalni senzor temperature (DS18B20) koji je vezan za digitalni ulaz A4. Serijskom komunikacijom pratimo rezultat merenja. Kada senzor izmeri temperaturu od 25°C uklju čiće se alarm. Buzzer je vezan na digitalni izlaz sa PWM-om. // Vežba 3 – Serijska komunikacija #include .h> #include .h>
// biblioteka za OneWire Protokol // biblioteka za DS18B20 senzor
#define ONE_WIRE_BUS A4
// Bus na pinu A4
int buzer = 11; int buzer double Prag double Prag = 25; double Temperatura = 0;
// mini zvučnik na pinu 11 PWM Dig.Out // Incijalizacija varijable // Incijalizacija varijable
OneWire oneWire(ONE_WIRE_BUS); oneWire(ONE_WIRE_BUS); DallasTemperature sensors(&oneWire); DallasTemperature sensors(&oneWire);
// Incijalizacija oneWire busa // Prosleđivanje reference senzora
void setup(void void)) { Serial.begin begin(9600); (9600); // Incijalizacija serijske k. sa PC Serial.println println(("Vezba br.3 - Serijska komunikacija: \n ------------------------------------------------- \n\n"); \n\n" ); // Slanje poruke kao potvrda veze sensors.begin sensors.begin(); ();
// Incijalizacija senzora
} void loop(void void)) { Serial.print print((" Merenje..."); Merenje..."); sensors.requestTemperatures sensors.requestTemperatures(); (); Serial.println println(("OK" "OK"); );
// Glavna petlja programa // Slanje poruke ka PC // Komanda senzorima da mere T // Slanje poruke ka PC
Temperatura = sensors.getTempCByIndex sensors.getTempCByIndex(0); (0); // // Preuzimanje vrednosti T
Serial.print print(("Temperatura senzora 1 je: "); "); // Slanje poruke Serial.print print(Temperatura); (Temperatura); // sa vrednošću T ka pc Serial.print print(("\n" "\n"); ); if (Temperatura> (Temperatura> Prag){ tone(buzer, tone (buzer, 1000,500); Serial.print print(("\n !!! ALARM !!! \n"); \n"); } }
// Ukoliko je T iznad zadatog praga // Aktivirati buzzer na 0,5s // Poslati Alarm poruku PC
��
������������� ����� ������ �����
�������� ���
9. Zaključak Mikronontroleri se u današnje vreme nalaze svuda oko nas, od de č jih igračaka, mobilnih telefona, ku ćnih aparata, do industrije, medicine, nauke i svemira. Potražnja, i proizvodnja mikrokontrolera u više milionskim serijama dovela je do pada cene i primene istih u svim aspektima naše svakodnevice. Arduino je primer uspešne kompanije koja je tržištu ponudila jeftin hardwer i besplatan softwer. Zajednica koja se formirala oko Arduino projekta narasla je do nesagledivih razmera i znanje koje dele me đusobno se svakodnevno uvećava. Popularnost koju je Arduino IDE stekao godinama unazad unazad i jednostavnost korišćenja istog uticale su na druge proizvo đače softvera da unaprede svoje softverske proizvode i u čine javno dostupnim svoje biblioteke. Izuzetan primer je Energia IDE razvojno okruzenje za , StellarisTiva C launch Pad (Texas Instruments) razvojne sisteme bazirane na ARM-Cortex mikrokontrolerima serije M4. Energia Energia IDE izgleda potpuno potpuno isto kao i Arduino IDE, pa pa je prelazak za za po četnike sa AVR platforme platforme na ARM gotovo trenutan. Kao neko ko se nije bavio programiranjem i mikrokontrolerima, mogu da kazem da sam otkrio jedan novi i zanimljiv svet. Prostora za unapre đenje znanja ima. Nastavljam da istražujem.
Slika 13– Energia IDE
��
������������� ����� ������ �����
�������� ���
10. Literatura 1] Dušan Tošić , “Mikroprocesori sa elementima programiranja”, Zavod za udžbenike, Beograd, 2009 2009 2] Brian Evans ”Beginning Arduino Programming” 2011 3] Maik Schmidt “Arduino A Quick-Start Guide” 4] Referentni sajt Arduino projekta http://www.arduino.cc
___________________________ _________________________________________ ____________________________ ____________________________ ____________________ ______ Aleksandar Tomić 2015
��