Category: STM32F4 Discovery

CPU load monitor library is simple library, which counts number of sleeping cycles using WFI() instruction compared to working cycles in one second. Load variable is updated every 1 second to determinate how much your processor works. For that case, you have to always put your system to sleep mode when you don’t need it. It uses DWT counter in Cortex M4/M7 to measure cycle counters! Library Read more about new HAL libraries Features Measures CPU load. Load depends between...

STM32Fxxx devices (in most cases) have True Random Number Generator (or RNG). This peripheral can provide 32-bits random number. I made a small library, that you can enable and use it very quickly which is compatible with HAL based drivers. RNG on STM32Fxxx is based on analog circuitry. It makes analog noise and that noise is connected to linear shift register. Analog circuitry is designed from ring oscillators whose outputs are XORed. For RNG circuitry is also separate LFSR clock...

Sometimes you need watchdog timer to look at your system if it gets stuck. I made a little library to work with it and to be compatible with HAL based drivers. IWDG timer in STM32Fxxx device has its own clock which is independent from main system clock. You have to constantly reset it’s counter value or it will elapse and reset MCU. Library Read more about new HAL libraries Features Detects if system was reset by watchdog Supports different timeouts Resets watchdog

Here it is. After some email for I2C library for HAL, I’ve made it. I ported my old for F4 to HAL based libraries for F0/F4/F7 series. I added method to read single byte, multi bytes, write single byte, write multi bytes, write/read single byte from/to register which has 16-bit address size. Library Read more about new HAL libraries Features Supports up to 4 I2C peripherals Supports different pinouts selectable on initialization Supports custom pin combinations Supports multiple read/write modes...

HD44780 LCDs are still very popular devices in embedded project so I think you can’t without simple library for them. I’ve port my old library to HAL based libraries for these LCDs. Library Read more about new HAL libraries Features 4-bits operation mode Minimum GPIOs used (6) Supports different LCD sizes Supports up to 8 custom characters Enable/disable cursor blinking Show/hide cursor Shift content in ram left/right Connection pins to board are user selectable Automatically jumps to new line when...

Here is an example of Fast Fourier Transform on STM32F4xx devices. This HAL library works for F4 and F7 series! That was the main reason I decided to make a library for FFT on STM32F4xx. To use this library, some third-party libraries are also required. All these required files can be found in STM32F4xx Standard peripheral drivers and DSP instructions provided from ST.com from their website. Now is version 1.5.1 of these drivers and also .lib file is included for ARM...