Follow our illustrated blog on Embedded Software Architecture

How to build a hybrid solar/wind energy harvester?

STM32 bootloader

Flashing via USART Most STM32 devices have an on-board (first-level) boot-loader (see Table1 of AN2606 for an overview of supported devices). The boot-loader allows developers to flash MCU’s internal ROM memory via SPI, CAN, USB, I2C etc. but for our project we want to connect via USART to the STM32 MCU. The USART protocol that is […]


STM32F100: configuring two PWM channels, polarity and alignment

Introduction In our project one source supplies power to two different loads and we need to control how much power goes to which load. To achieve this, we use an STM32F100 processor to PWM high-power mosfets. These mosfet channels do or do not conduct green energy to the different loads which are a battery (bank) […]


STM32F100: why and how to use the internal reference voltage for ADC?

One of our main development boards is the  STM32VLDISCOVERY. Its st-link is an in-circuit debugger and programmer, and makes development for prototyping fast and easy. The board has an ‘interesting’ property though: its reference voltage is labeled 3.3V while it is actually… only 3V. Check out the picture for proof!   After reviewing the board schematics we found […]