Monthly Archive: July 2015

HAL Library 18- RNG for STM32Fxxx 1

HAL Library 18- RNG for STM32Fxxx

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...

HAL Library 17- IWDG for STM32Fxxx 3

HAL Library 17- IWDG for STM32Fxxx

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

HAL Library 16- I2C for STM32Fxxx devices 14

HAL Library 16- I2C for STM32Fxxx devices

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 LCD Example 30

HAL library 15- HD44780 for STM32Fxxx

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...

FFT result of matlab generated signal 2

HAL Library 14- Fast Fourier Transform for STM32Fxxx

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...

HAL Library 13- Buttons for STM32Fxxx 1

HAL Library 13- Buttons for STM32Fxxx

New port. Buttons library for HAL based libraries. It can handle buttons, connected to your STM32Fxxx devices. It supports basically unlimited number of buttons with different triggering. Currently, callback functions can be called on these events: Button on pressed: Called directly when button is pressed Button normal press: Called when button is released after specific amount of time Button long press: Called when button is pressed for specific “long” amount of time It uses malloc() to allocate memory, so you...