Софтвер за вградливи системи

1.Наслов на наставниот предметСофтвер за вградливи системи
Software for Embedded Systems
2.КодF23L3W048
3.Студиска програма
4.Организатор на студиската програма (единица, односно институт, катедра, оддел)Факултет за информатички науки и компјутерско инженерство
5.Степен (прв, втор, трет циклус)Прв циклус
6.Академска година / семестар7 / Зимски
7.Број на ЕКТС кредити6
8.Наставник
9.Предуслови за запишување на предметотАлгоритми и податочни структури или Примена на алгоритми и податочни структури
10.Цели на предметната програма (компетенции)Целта на курсот е да ги оспособи студентите да креираат апликации наменети за микроконтролери како и работа со влез/излез, подетално со СТМ микроконтролерите. Студентите ќе научат да работат со Nucleo развојните плочи, да имплементираат код, да дебагираат и да управуваат со софтверска конфигурација. Исто така студентите ќе научат кога и како се користи оперативен систем во реално време.
11.Содржина на предметната програмаПредавања:
1. Оперативни системи во реално време (RTOS)
2. FreeRTOS
3. Менаџмент на задачи
4. Алгоритми за распределба
5. Менаџмент на редици
6. Менаџмент на софтверски тајмери
7. Менаџмент на прекини
8. Менаџмент со ресурси
9. Групи на настани
10. Нотификации на задачи
11. Поддршка на развој и дебагирање
12. Менаџмент на меморија

Вежби:
1. Nucleo 64 развојна плоча
2. GPIO и HAL
3. Програмирање на сериска порта
4. LCD и keyboard интерфејси
5. ADC, DAC и сензорски интерфејси
6. Тајмери
7. Прекински системи
8. SPI протокол и DAC интерфејс
9. I2C протокол и RTC интерфејс
10. Реле и степер мотори
11. PWM и контрола на DC мотор
12. DMA програмирање
12.Методи на учењеПредавања со користење на презентации, интерактивни предавања, вежби (користење на опрема и софтверски пакети), тимска работа, пример случаи, поканети гости предавачи, самостојна изработка и одбрана на проектна задача.
13.Вкупен расположив фонд на време6 ЕКТС x 30 часа = 180 часа
14.Распределба на расположивото време30 + 45 + 15 + 15 + 75 = 180 часа
15.Форми на наставните активности
15.1.Предавања - теоретска настава30 часови
15.2.Вежби (лабораториски, аудиториски), семинари, тимска работа45 часови
16.Други форми на активности
16.1.Проектни задачи15 часови
16.2.Самостојни задачи15 часови
16.3.Домашно учење75 часови
17.Начин на оценување
17.1.Тестови0 бодови
17.2.Семинарска работа / проект ( презентација: писмена и усна)15 бодови
17.3.Активности и учење10 бодови
17.4.Завршен испит70 бодови
18.Критериуми за оценување (бодови/ оценка)
до 50 бода5 (пет) (F)
од 51 до 60 бода6 (шест) (E)
од 61 до 70 бода7 (седум) (D)
од 71 до 80 бода8 (осум) (C)
од 81 до 90 бода9 (девет) (B)
од 91 до 100 бода10 (десет) (A)
19.Услов за потпис и полагање на завршен испитРеализирани активности
20.Јазик на кој се изведува наставатаМакедонски и англиски
21.Метод на следење на квалитетот на наставатаMеханизам на интерна евалуација и анкети
22.Литература
22.1.Задолжителна литература
1. Muhammad Ali Mazidi, Shujen Chen, Eshragh Ghaemi | STM32 Arm Programming for Embedded Systems | MicroDigitalEd | 2018
2. Brian Amos | Hands-On RTOS with Microcontrollers: Building real-time embedded systems using FreeRTOS, STM32 MCUs, and SEGGER debug tools | Packt | 2020
3. Donald Norris | Programming with STM32: Getting Started with the Nucleo Board and C/C++ | McGraw-Hill Education | 2018
4. Richard Barry | Mastering the FreeRTOS™ Real Time Kernel | Real Time Engineers Ltd. | 2016
22.2.Дополнителна литература
Ред.бр. Автор Наслов Издавач Година