Tagged: hardware abstraction layer

HAL Library 22- BOR for STM32Fxxx 1

HAL Library 22- BOR for STM32Fxxx

BOR (Brown Out Reset) is a way to reset microcontroller if target voltage is below voltage we set. When this happens, MCU is in reset state until voltage comes above selected voltage. STM32F4/7xx devices have 4 possible BOR values, which are described later or in API documentation. Library Read more about new HAL libraries Features Set Brown-Out detection value Get Brown-Out detection value

HAL Library 21- Multi purpose USB library for STM32Fxxx 99

HAL Library 21- Multi purpose USB library for STM32Fxxx

This USB library is designed in a ways that can easily be used with different modes. That’s why I’ve made a single library for everything what I support now and which support I will add in future. The main purpose of library is to support USB FS and HS modes on STM32Fxxx devices at the same time, without any problems. So I designed a library, which allows users to have all these possibilities: Use both USB modes as hosts Use...

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