Programming II
Osnovni podatki
Nosilec: Iztok Fajfar
Vrsta predmeta: Obvezni - strokovni
Število kreditnih točk: 5
Semester izvajanja: 2. semester
Koda predmeta: 64608
Opis predmeta
The course is divided into two sections: the C programming language and programming a simple microcontroller system. We thoroughly examine the structure of the C language in accordance with the C89 and C99 standards and the techniques used for programming well-known algorithms and data structures. Special emphasis is placed on parts of the language that the standard does not define unambiguously and are often the source of hard-to-trace errors. In the second part of the course, we focus on the basic principles of programming microcontrollers, using the Arduino system as an example. We first address low-level programming operations that allow us to manipulate individual bits in registers or specific parts of memory. Later, we are introduced to the principles of connecting sensors and actuators and the basics of designing teal-time embedded systems. In this context, we also learn about the concept of a finite state machine. We also encounter the concept of software and hardware interrupts.
Cilji
In-depth knowledge of the fundamentals of the C programming language and familiarization with the basics of embedded systems, the principles of multitasking and real-time systems, and the methods of connecting peripheral devices and communicating with them.
Metode poučevanja in učenja
Two hours of lectures and two hours of hands-on exercises per week, lecture recordings, textbook, homework assignments, individual work with more advanced students.