Microcontroller programming 1100-2`PMK
Program:
1. Microcontroller applications' area. Architecture of microcontrollers. Eagle - applica-tion for designing electronic circuits.
2. Microcontroller programming in C/C++ high level languages. Programming envi-ronments in Linux and MS Windows systems. Configuration of microcontroller. Pro-gram uploading. Types of programmers. Using input/output binary ports.
3. Standard library. Object oriented programming in microcontroller applications. How to write effective programs.
4. Generation of delays, signals of given frequency and pulse modulation. Use of in-ternal counters to signal generation.
5. Interrupt system. How to write interrupt handlers. Interrupt triggering with external signals and with internal circuits. Interrupts hierarchy. Interrupts enabling and dis-abling.
6. Communication with user. Multiplexed LED display, text and graphics LCD displays. Decoding matrix keyboard, single and multiplied key presses, short and long ones without and with interrupt system.
7. Serial interfaces: RS232, I2C, SPI, 1-wire.
8. Frequency measurement. Counting of impulses and widths with use of internal counters and voltage comparator. Programming A/D converter.
9. Common additional microcontroller circuits. Watchdog. Non volatile EEPROM and FLASH memories.
10. USB programming.
Prerequisites: programming with C/C++ languages, basics of electronics.
Description by Paweł Klimczewski.
Mode
Prerequisites (description)
Course coordinators
Learning outcomes
Knowledge: the student knows and understands the principles of constructing and programming electronic circuits with microcontrollers,
Skills: the student is able to build a circuit and write a program that controls its operation,
Social competences: the student is ready to build a circuit and/or write a program controlling the circuit, for example as part of research conducted within the institution.
Assessment criteria
The assessment covers the description of an electronic circuit project using a microcontroller, designed, built, and programmed by the student.
Assessment criteria:
- A PCB board designed independently.
- Use of at least two interrupts.
- Use of at least one hardware module related to data transmission (RS232, SPI, I2C).
- Use of at least one of the remaining hardware modules (e.g., timers, analog-to-digital converter, watchdog, power-saving module).
- Elegant and well-commented source code.
- Documentation in the form of a website.
Additional information
Additional information (registration calendar, class conductors, localization and schedules of classes), might be available in the USOSweb system: