|
Lecturer(s)
|
-
Havlíček Libor, Ing. Ph.D.
|
|
Course content
|
1. Introduction to the subject, basic concepts of CPU, embedded system, architecture (8-bit/32-bit, AVR, ARM, RISC-V..). 2. Development chain, programming languages, development environments, programmers, access to peripherals. 3. Microprocessor specific programming languages, environment preparation, libraries, header files. 4. I/O ports, input/output pin modes, circuitry, alternative functions. 5. Software solutions, interrupts, state machine, counters/timers. 6. Serial interfaces (UART/USART, SPI, I2C), buses (RS232/422/485, CAN, USB?). 7. Keypads, displays. 8. Support circuits, minimum hardware requirements and wiring. 9. ADCs, DACs, sensor connections, specifics of analog hardware, alternate solutions. 10. Port expansion, load connections, I/O protection. 11. Signal generation using counter/timer. 12. Frameworks and supporting libraries, operating systems in microprocessors and microprocessor applications.
|
|
Learning activities and teaching methods
|
Monologic (reading, lecture, briefing), Dialogic (discussion, interview, brainstorming)
- Home preparation for classes
- 45 hours per semester
- Preparation for laboratory work and processing of results
- 45 hours per semester
- Individual project
- 8 hours per semester
- Participation in classes
- 52 hours per semester
|
|
Learning outcomes
|
The course aims to introduce students to the application of microprocessors in typical applications. In the course of the course, the student will learn the basic concepts and specifics of using higher-level programming languages in embedded devices, learn how to effectively use microprocessor peripherals, create interfaces, use typical circuitry and support circuits for microprocessors.
After completing this course, the student should be able to assess the deployment of an appropriate architecture and processor to solve a given problem, and should be able to design the wiring, animate and program the resulting application regardless of the peripherals used.
|
|
Prerequisites
|
Knowledge of C language, Creating makefile configuration files. Knowledge of AVR architecture. Independent work under the UNIX operating system. Compilation using GCC tools.
|
|
Assessment methods and criteria
|
Oral examination, Self project defence
During the semester and in the final exam, the student must demonstrate an understanding of the solved problems. The specific requirements will be communicated to the students by the teacher in the first week of the semester.
|
|
Recommended literature
|
-
BARNETT, Richard H., Larry. O'CULL a Sarah COX. Embedded C programming and the Atmel AVR. Clifton Park, NY: Delmar, 2003. ISBN 978-1401812065.
-
Bumba, Jiří a Petr Fořt. Programování mikroprocesorů: praktický návod nejen pro mikroprocesory PIC. Vydání druhé. Brno: Computer Press, 2011. Učebnice (Computer Press), 2011. ISBN 978-80-251-2838-1.
-
MAZIDI, Muhammad Ali., Sarmad. NAIMI a Sepehr. NAIMI. The AVR microcontroller and embedded systems: using Assembly and C. Upper Saddle River, N.J.: Prentice Hall, 2011. ISBN 0-13-800331-9.
-
Pinker, Jiří. Mikroprocesory a mikropočítače. Praha: BEN - technická literatura, 2004. ISBN 80-7300-110-1.
-
Voda, Zbyšek. Průvodce světem Arduina. Bučovice: Martin Stříž, 2017. ISBN 978-80-87106-93-8.
-
WILLIAMS, Elliot. Make: AVR programming. Sebastopol: Calif, 2013. ISBN 978-144-9355.
|