STM32-UNO doc » Historie » Revize 2
Revize 1 (Ján Hýbl, 2026-10-30 12:59) → Revize 2/3 (Ján Hýbl, 2026-10-30 14:29)
h1. STM32-UNO – Development Platform for Teaching Microprocessor Technology
h2. Introduction
STM32-UNO is a universal development platform designed for education, experimentation, and the development of electronic systems controlled by a microcontroller. It enables students to gain practical experience with the principles of microprocessor technology, embedded systems programming, and communication between electronic devices and their environment.
The platform is based on the *STM32F446RET6 32-bit microcontroller* manufactured by STMicroelectronics, featuring an ARM Cortex-M4 processor core. This microcontroller integrates a processor, memory, and numerous peripheral circuits into a single integrated circuit.
Unlike a conventional personal computer, which executes many different programs, a microcontroller is typically designed to control a specific device. For example, it can measure temperature, process signals from sensors, control an electric motor, or communicate with a computer.
!{height:300px}https://rm.prokyber.cz/attachments/download/5513/STM32-UNO_ver1_top.png! !{height:280px}https://rm.prokyber.cz/attachments/download/5512/STM32-UNO_ver1_bottom.png!
h2. What Does STM32-UNO Include?
The main component of the board is the microcontroller, which executes a program created by the user. This program is called *firmware* and determines how the entire device behaves.
The STM32F446RET6 microcontroller provides the following basic specifications:
|_. Parameter |_. Value |
| Processor core | 32-bit ARM Cortex-M4 |
| Maximum clock frequency | 180 MHz |
| Flash program memory | 512 kB |
| SRAM | 128 kB |
| Analog-to-digital converters | 3 × 12-bit ADC |
| Digital-to-analog converters | 2 × 12-bit DAC |
| Counters and timers | Hardware timers, including PWM |
| Communication interfaces | UART/USART, SPI, I²C, USB |
The development board also includes power supply circuits, a USB-C connector, a RESET button, a user button, indicator LEDs, and connectors for attaching additional electronic devices. It also features a 32.768 kHz crystal for the real-time clock (RTC).
*A significant feature of STM32-UNO is its integrated LED indication of digital input and output states.* This allows students to observe program responses directly on the board without connecting external components during their first experiments.
h2. How Does a Microcontroller Work?
The operation of a microcontroller can be simplified into three basic steps:
# *Input acquisition* – obtaining information from a button, temperature sensor, or measurement circuit.
# *Information processing* – executing program instructions, performing calculations, and determining the next action.
# *Output generation* – switching on an LED, generating a control signal, or transmitting measured data to a computer.
An important characteristic of microcontrollers is their ability to respond to events in real time. Using hardware timers and an interrupt system, they can accurately measure time intervals or respond quickly to changes in input signals.
h2. Connecting Additional Devices
STM32-UNO provides several standardized interfaces that allow its functionality to be extended.
* *Arduino UNO R3* – a connector layout compatible with many expansion modules designed for the Arduino UNO platform.
* *mikroBUS* – an interface for connecting Click expansion boards manufactured by MikroElektronika, including measurement modules, displays, and communication devices.
* *STEMMA QT* – a connector for easily connecting digital sensors via the I²C bus, also compatible with the SparkFun Qwiic ecosystem.
* *USB-C* – used for powering the board and enabling data communication with a computer.
These connectors allow students to focus primarily on programming and understanding peripheral functionality. During initial laboratory exercises, there is no need to construct complex circuits on a solderless breadboard.
However, when connecting external modules, the electrical characteristics of each interface must be respected. The STM32 microcontroller operates with 3.3 V logic levels, and not all its pins are tolerant of 5 V signals.
h2. Programming STM32-UNO
The microcontroller executes instructions stored in its Flash memory. Students develop these programs on a personal computer, typically using the C or C++ programming languages.
The laboratory environment is based on *Visual Studio Code, the GCC compiler, and the Mbed OS framework*.
Students first write the source code, which is subsequently compiled into machine instructions for the microcontroller. After the firmware has been uploaded to the board, the microcontroller begins executing the programmed operations.
During their work, students gradually become familiar with digital inputs and outputs (GPIO), interrupts, timers, analog converters, and communication interfaces.
h2. Applications in Biomedical Engineering Education
Microcontrollers form the foundation of many modern medical and laboratory devices. They are used in measurement instruments, rehabilitation equipment, monitoring systems, and portable diagnostic devices.
STM32-UNO enables students to explore the principles of these systems through practical laboratory exercises:
* Controlling LEDs and detecting button presses.
* Measuring reaction time using a hardware timer.
* Reading data from digital sensors through the I²C interface.
* Measuring analog voltage using an analog-to-digital converter (ADC).
* Processing and filtering measured signals.
* Transmitting measured values to a computer and visualizing the results.
* Developing a simple biomedical measurement system.
h2. Learning Objectives
The objective of the course is not merely to teach students how to write programs for a microcontroller, but primarily to *understand the relationship between electronic hardware, software, and the behavior of the complete system*.
After completing the laboratory exercises, students should be able to design a simple microprocessor-based system, connect appropriate sensors, program signal processing functions, and transmit the results to another device.
STM32-UNO therefore provides a practical platform for developing the fundamental knowledge and skills required to design modern embedded systems, particularly in the field of biomedical engineering.