Prema tekućem nastavnom planu, nastava iz izbornog predmeta Razvoj softvera za embeded sisteme odvija se u toku VI semestra OAS na smeru za Mikroračunarsku elektroniku.
Specifikacija predmeta
Oznaka predmeta: 20.EM306Broj ESPB: 6
Broj časova aktivne nastave nedeljno: 2+2
Nastavni kadar
Nastavnik:dr Ivan Mezei, red. prof., Kabinet: NTP135, telefon: 485 4519, email: imezei(at)uns.ac.rs
Konsultacije: po dogovoru
Asistenti: BSc David Vidović BSc Ivan Čejić
Demonstratori: Nadežda Jevremović
Način polaganja ispita
Način formiranja ocene:
Ocena se formira na osnovu kolokvijuma na kojima se ispituje znanje u vezi predavanja (50%), na osnovu predispitnih obaveza sa laboratorijskih kolokvijuma i drugih aktivnosti na laboratorijskim vežbama (50%).
U toku semestra predviđeno je održavanje kolokvijuma u vezi vežbi.
Pohađanje predavanja i vežbi je obavezno. Na vežbama je dozvoljeno imati do 2 izostanka u suprotnom predmet se pohađa ponovo naredne godine jer nadoknade ne postoje.
U toku semestra predviđeno je održavanje kolokvijuma u vezi vežbi.
Pohađanje predavanja i vežbi je obavezno. Na vežbama je dozvoljeno imati do 2 izostanka u suprotnom predmet se pohađa ponovo naredne godine jer nadoknade ne postoje.
Materijal za predavanja:
Predavanja
Okvirne teme:
Uvodno predavanje.
Blok tema 1: U/I portovi mikrokontrolera. U/I portovi mikrokontrolera ATmega328. Softver mikrokontrolera i embedded sistema. Organizacija, struktura i tipovi C fajlova.
Blok tema 2: Memorijski modeli i preprocesor. Test pitanja za vežbanje 1-2.
Blok tema 3: Strukture, unije, memorijsko mapiranje. Test pitanja za vežbanje 3.
Blok tema 4: Rad sa petljama, uslovno izvršavanje i serijska komunikacija. Test pitanja za vežbanje 4.
Blok tema 5: Logičke operacije. Rad sa matričnom tastaturom, debouncing. Test pitanja za vežbanje 5.
Blok tema 6: Prekidi. Primeri "(ne)kulture" programiranja. Test pitanja za vežbanje 6.
Blok tema 7: Super petlja i FIFO baferi. Test pitanja za vežbanje 7.
Tema 8: Softverske mašine stanja. Test pitanja za vežbanje 8.
Blok tema 9 i 10: Uvod u RTOS
Kooperativni operativni sistemi za rad u realnom vremenu.
Preemptive operativni sistemi za rad u realnom vremenu.
Test pitanja za vežbanje 9 i 10.
Tema 11: Kultura programiranja.
Tema 12: Optimizacije koda. Primer.
Spisak pitanja iz teorije.
Literatura:
1.D.Bortnik, V.Nikić, M.Lukić, I.Mezei "Razvoj softvera za embedded sisteme", Infoelektronika, 2023, 269 str. ISBN 978-86-80134-51-2 https://www.infoelektronika.net/knjiga-razvoj-softvera-za-embeded-sisteme-605
2. Deo skripta za potrebe dela ovog predmeta autora mr Milana Nikolića i dr Kalmana Babkovića.
Dodatna literatura:
3. Robert C. Martin, Clean Code: A Handbook of Agile Software Craftsmanship. Upper Saddle River, NJ: Prentice Hall, 2009.
4. ArdOS: https://bitbucket.org/ctank/ardos-ide/wiki/Home
Okvirne teme:
Uvodno predavanje.
Blok tema 1: U/I portovi mikrokontrolera. U/I portovi mikrokontrolera ATmega328. Softver mikrokontrolera i embedded sistema. Organizacija, struktura i tipovi C fajlova.
Blok tema 2: Memorijski modeli i preprocesor. Test pitanja za vežbanje 1-2.
Blok tema 3: Strukture, unije, memorijsko mapiranje. Test pitanja za vežbanje 3.
Blok tema 4: Rad sa petljama, uslovno izvršavanje i serijska komunikacija. Test pitanja za vežbanje 4.
Blok tema 5: Logičke operacije. Rad sa matričnom tastaturom, debouncing. Test pitanja za vežbanje 5.
Blok tema 6: Prekidi. Primeri "(ne)kulture" programiranja. Test pitanja za vežbanje 6.
Blok tema 7: Super petlja i FIFO baferi. Test pitanja za vežbanje 7.
Tema 8: Softverske mašine stanja. Test pitanja za vežbanje 8.
Blok tema 9 i 10: Uvod u RTOS
Kooperativni operativni sistemi za rad u realnom vremenu.
Preemptive operativni sistemi za rad u realnom vremenu.
Test pitanja za vežbanje 9 i 10.
Tema 11: Kultura programiranja.
Tema 12: Optimizacije koda. Primer.
Spisak pitanja iz teorije.
Literatura:
1.D.Bortnik, V.Nikić, M.Lukić, I.Mezei "Razvoj softvera za embedded sisteme", Infoelektronika, 2023, 269 str. ISBN 978-86-80134-51-2 https://www.infoelektronika.net/knjiga-razvoj-softvera-za-embeded-sisteme-605
2. Deo skripta za potrebe dela ovog predmeta autora mr Milana Nikolića i dr Kalmana Babkovića.
Dodatna literatura:
3. Robert C. Martin, Clean Code: A Handbook of Agile Software Craftsmanship. Upper Saddle River, NJ: Prentice Hall, 2009.
4. ArdOS: https://bitbucket.org/ctank/ardos-ide/wiki/Home
Materijal za laboratorijske/računarske vežbe:
1 nedelja. Eclipse razvojno okruženje (PDF) + Pravila kodovanja (PDF)
2 nedelja. Alat za kontrolu verzije - GIT (PDF)
3 nedelja. Alat za generisanje dokumentacije (PDF) i primer za vežbu + Integer tipovi podataka (PDF)
4 nedelja. Organizacija projekta sa više izvornih datoteka (PDF) + timer0 + pin
5 nedelja. Serijski port i funkcije za serijsku komunikaciju (PDF) + biblioteka (ZIP) + terminal (ZIP)
6 nedelja. Rad sa matričnom tastaturom (PDF) + biblioteka (ZIP)
7 nedelja. Softverske mašine stanja (PDF)
8 nedelja. AVR-GCC i Makefile (PDF)
9 nedelja. PLS7 (PDF)
10 nedelja. RTOS I deo (PDF)
11, 12 nedelja. RTOS II deo (PDF) + RTOS implementacija
2 nedelja. Alat za kontrolu verzije - GIT (PDF)
3 nedelja. Alat za generisanje dokumentacije (PDF) i primer za vežbu + Integer tipovi podataka (PDF)
4 nedelja. Organizacija projekta sa više izvornih datoteka (PDF) + timer0 + pin
5 nedelja. Serijski port i funkcije za serijsku komunikaciju (PDF) + biblioteka (ZIP) + terminal (ZIP)
6 nedelja. Rad sa matričnom tastaturom (PDF) + biblioteka (ZIP)
7 nedelja. Softverske mašine stanja (PDF)
8 nedelja. AVR-GCC i Makefile (PDF)
9 nedelja. PLS7 (PDF)
10 nedelja. RTOS I deo (PDF)
11, 12 nedelja. RTOS II deo (PDF) + RTOS implementacija
Dodatne informacije
Tinkercad maketa za vežbanje
Preporuke C kodovanja (adaptiran Indian Hill stil).
NASA C stil kodovanja.
Git (knjiga).
Eclipse IDE + WinAVR + AVRDude uputstvo za instalaciju (PDF).
Rešenje problema sa WinAVR instalacijom pod Windows 10.
Za Arduino Uno klonove koji koriste čip CH340G (ili neku sličnu verziju) za USB-UART konverziju pod OS Windows 10 je potrebno instalirati ovaj drajver. Za detalje se mogu pogledati i sledeći linkovi:
https://sparks.gogo.co.nz/ch340.html
https://www.arduined.eu/ch340-windows-10-driver-download/
Za Arduino Uno klon sa FT232R čipom za USB-UART konverziju pod OS Windows 10 je potrebno instalirati ovaj drajver.
Rezultati popravnog kolokvijuma: pdf
Preporuke C kodovanja (adaptiran Indian Hill stil).
NASA C stil kodovanja.
Git (knjiga).
Eclipse IDE + WinAVR + AVRDude uputstvo za instalaciju (PDF).
Rešenje problema sa WinAVR instalacijom pod Windows 10.
Za Arduino Uno klonove koji koriste čip CH340G (ili neku sličnu verziju) za USB-UART konverziju pod OS Windows 10 je potrebno instalirati ovaj drajver. Za detalje se mogu pogledati i sledeći linkovi:
https://sparks.gogo.co.nz/ch340.html
https://www.arduined.eu/ch340-windows-10-driver-download/
Za Arduino Uno klon sa FT232R čipom za USB-UART konverziju pod OS Windows 10 je potrebno instalirati ovaj drajver.
Rezultati popravnog kolokvijuma: pdf