Programming Embedded Systems in ‘C’

Објавено: June 29, 2023
1. Course Title Programming Embedded Systems in ‘C’
2. Code 4ФЕИТ05022
3. Study program 9-VMS
4. Organizer of the study program (unit, institute, department) Faculty of Electrical Engineering and Information Technologies
5. Degree (first, second, third cycle) Second cycle
6. Academic year/semester I/1   7.    Number of ECTS credits 6.00
8. Lecturer Dr Zoran Ivanovski
9. Course Prerequisites
10. Course Goals (acquired competencies):

Upon completion of the course the student have acquired knowledge and understanding of programming concepts and techniques necessary for optimal and efficient programming of embedded systems. The acquired knowledge will enable him to design, implementation, test and deploy embedded systems software. The course is also, the base for following some of the courses in the domain of embedded systems software.

11. Course Syllabus:

Working environment for embedded systems. Basic programming techniques: control flow, arrays, functions. Memory management: pointers, pointer arrays, function pointers, advanced work with pointers, structures and unions. Data structures: execution time analysis and memory requirement analysis, linked lists, stacks and ques. Conditional compiling, preprocessor directives, files. C functions with variable arguments. Introduction to processes. Introduction to system calls.

12. Learning methods:

Combined learning methods: lectures, supported by presentations and concepts visualizations, active participation of students through project works.

13. Total number of course hours 180
14. Distribution of course hours 3 + 3
15. Forms of teaching 15.1 Lectures-theoretical teaching 45 hours
15.2 Exercises (laboratory, practice classes), seminars, teamwork 45 hours
16. Other course activities 16.1 Projects, seminar papers 30 hours
16.2 Individual tasks 30 hours
16.3 Homework and self-learning 30 hours
17. Grading
17.1 Exams 0 points
17.2 Seminar work/project (presentation: written and oral) 50 points
17.3. Activity and participation 0 points
17.4. Final exam 50 points
18. Grading criteria (points) up to 50 points 5 (five) (F)
from 51 to 60 points 6 (six) (E)
from 61 to 70 points 7 (seven) (D)
from 71 to 80 points 8 (eight) (C)
from 81 to 90 points 9 (nine) (B)
from 91 to 100 points 10 (ten) (A)
19. Conditions for acquiring teacher’s signature and for taking final exam Completed project work.
20. Forms of assessment The student should complete the project work and present it before the final exam. The final exam takes place in the exam session, the time frame is 60 minutes. The final score is formed based on the score from the project work and the final exam.
21. Language Macedonian and English
22. Method of monitoring of teaching quality Internal evaluation and surveys.
23. Literature
23.1.       Required Literature
No. Author Title Publisher Year
1. A.N.Sloss, D.Symes and C. Wright ARM System Developer’s Guide: Designing and Optimizing System Software Elsevier Inc. 2004
23.2.       Additional Literature
No. Author Title Publisher Year
1.  Jonathan W. Valvano   Developing Embedded Software in C Using ICC11/ICC12/Metrowerks  University of Texas  2006