Microprocessors and Embedded Systems

Private info:http://www.fit.vutbr.cz/study/courses/IMP/private/
Completion:credit+exam (written)
Type of
Hour/semLecturesSem. ExercisesLab. exercisesComp. exercisesOther
Guarantee:Růžička Richard, doc. Ing., Ph.D., MBA, DCSY
Lecturer:Bidlo Michal, Ing., Ph.D., DCSY
Růžička Richard, doc. Ing., Ph.D., MBA, DCSY
Strnadel Josef, Ing., Ph.D., DCSY
Instructor:Bidlo Michal, Ing., Ph.D., DCSY
Mrázek Vojtěch, Ing., DCSY
Nevoral Jan, Ing., DCSY
Růžička Richard, doc. Ing., Ph.D., MBA, DCSY
Strnadel Josef, Ing., Ph.D., DCSY
Šimek Václav, Ing., DCSY
Wiglasz Michal, Ing., DCSY
Faculty:Faculty of Information Technology BUT
Department:Department of Computer Systems FIT BUT
Design of Computer Systems (INP), DCSY
Machine Level Programming (ISU), DITS
Peripheral Devices (IPZ), DCSY
Learning objectives:
  To give the students the knowledge of architecture of different microcontrollers. To acquaint with performance of individual subsystems namely CPU- programming model, flash memory, timer, interrupt subsystem, communication interface, AD converter. Make students familiar with basic rules and programming techniques in a  high-level language C as well as with embedded system design.
  Embedded systems, introduction, applications. Microcontroller architecture. Memory subsystem. Programmers model, programming of the ARM core. Stack. Interrupt subsystem and its programming. On chip peripheral devices and their programming: system clock generator, timer, communication interface UART, IIC and SPI, analogue and digital input and output, RTC module. Programming techniques for embedded systems in C language.
Knowledge and skills required for the course:
  To be familiar with the structure of CPU  and other computer components, basics of electronics and machine-level programming. The basic knowledge of programming in C language.
Subject specific learning outcomes and competences:
  • Students are familiar with general structure of microcontrollers and with the techniques of embedded systems design.
  • Students are capable to design and debug the routines and initialization routine for each peripheral device. They are skilled in utilizing of basic debugging techniques for the application programs written in C language.
Generic learning outcomes and competences:
  Understanding of design specificity of embedded systems using microcontrollers and techniques of application debugging.
Syllabus of lectures:
  1. Introduction into Embedded systems.
  2. ARM Core for microcontrollers.
  3. Memory subsystem and interrupts.
  4. Programming in C.
  5. Communication intefraces.
  6. FITkit programming.
  7. Digital inputs and outputs, ports.
  8. Timers, counters.
  9. Analogue input and output.
  10. System clock and clock generation.
  11. Power supply and power consmption of embedded systems.
  12. Practical aspects of embedded systems design.
  13. Real time system.
Syllabus of laboratory exercises:
  1. Introduction to lab kit, serial communication.
  2. Digital input/output.
  3. Timer, PWM.
  4. Analogue input.
Syllabus of computer exercises:
  1. Microcontroller programming.
  2. Lab kit - usage, structure, programming.
  3. Minerva Kit - how to use.
  4. Development tools for embedded systems with microcontroller.
  5. Microcontrollers' debugging interfaces.
  6. Development support for time-critical application.
Syllabus - others, projects and individual work of students:
  • Compulsory individual or team twelve-hour project.
Fundamental literature:
Study literature:
Controlled instruction:
  Within this course, attendance on the lectures and group practice are not monitored. Laboratory practice and project are monitored.
Progress assessment:
  • laboratory assignments with the defense
  • mid-term written examination
Exam prerequisites:
  Project designing with obligatory storing  into IS and getting at least 5 points for the project.