Programming of Microcontrollers

Osnovni podatki

Nosilec: Iztok Fajfar

Vrsta predmeta: Obvezni – strokovni

Število kreditnih točk: 5

Semester izvajanja: 2. semester

Koda predmeta: 64108

Opis predmeta

The course covers two main areas: programming in the C language in accordance with the C89 and C99 standards, and the development of applications for simple microcontroller systems. We thoroughly explore the syntax of the C language, along with techniques used for implementing well-known algorithms and data structures. Special attention is given to language elements whose behavior is not unambiguously defined by the standard and are often the source of difficult-to-trace errors. To study the basic principles of microcontroller programming, we use the Arduino platform. We learn programming techniques for manipulating bits in registers or specific parts of memory. We explore ways to connect sensors and actuators and the basics of designing real-time embedded systems. In this context, we are introduced to the concept of finite state machines as a design tool. We clarify the concept of interrupts, which is crucial for understanding event-driven systems. The course concludes with practical examples of designing a digital clock and a dimmer switch.

Cilji

In-depth knowledge of the fundamentals of the C programming language and familiarization with the basics of embedded systems, principles of multitasking systems and real-time systems, as well as 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. 

Na vrh

Bodi na tekočem

Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška cesta 25, 1000 Ljubljana

E:  dekanat@fe.uni-lj.si T:  01 4768 411