Some time ago I have written SPL vs HAL: which one should you use where I have focused on differences between two main frameworks for STM32 — Standard Peripheral Library (SPL) and Hardware Abstraction Layer commonly known as HAL. Since the recent post only focuses on those two sets of libraries I have decided to write some examples which can tip the scale. What is more, at the end of previous article I have asked an important question for a developer — does the STM is going to introduce us to a brand new library. Answer to this and other questions are further in this post.
Category Archives: Microcontrollers
Mechanical filter for UAV — damping IMU vibrations
Good quality estimation of tilt angles such as roll and pitch is desired when it comes to an UAV control. Without good quality signal a proper work of flight controller is nearly impossible. However, the task of filtering is not an easy task, especially when it comes to DSP (digital signal processing). It is even harder when digital filter is inadequate. In this post a mechanical filter is presented that allows to significantly improve attitude estimation in terms of roll, pitch and yaw.
Code size optimization for ARM based MCUs
There is a time in every developer’s life when the program memory is running out. If you have already experienced this problem or you are about to this article is for you!
Continue reading
STM32 HAL driver for I2C OLED display with U8glib
Recently, I have come to a conclusion that it would be good to print the state of my quadrocopter on a display. The question was what kind of display should I use. I decided to give a try to a small 0.96″ OLED display with I2C interface. It is based on SSD1603 driver. You can see this display on the image above. However, there was an issue regarding the screen controller. But it was soon solved. I have come across the U8glib which is a graphic library, quite popular among Arduino users. As soon as I started to read about the library I realized that it does not support STM32, not mentioning the HAL library.
Well, I have solved that 😉
Using FatFS with HAL
Recently I have written a short post about the HAL library created by STM32. The HAL is gaining popularity among hobbyists and is more and more frequently used. However, when you would like to use it for something else than just basic stuff like generating PWM on digital output you have to write it by yourself. Not so long ago I had to use SD card in one of my projects. It turned out that there is no driver for FatFS based on HAL – at least there was not. I decided to write the driver and here you can read about it…
SPL vs HAL: which one should you use
There is an unending dispute about which library should you use when writing an application for STM32 microcontroller. Actually, there are at least three choices which you should consider. In this post I will highlight the advantages and disadvantages of each approach which can be considered when writing software for ST microcontrollers.
433MHz receiver and transmitter
Wireless transmission is getting more and more popular. I will try to show you how does it work using coupled receiver and transmitter which are both working on the same frequency (433MHz).
A small operating system
There are many operating systems: Linux, Windows, iOS,… But there are a few which can work in real time like Linux Xenomai. However, there are very little which can fit a microcontroller. One of them is a FreeRTOS. There are some variations of the FreeRTOS which can handle different conditions and requirements.
This blog post is not about such operating system, however…
A new controller for QuadroCopter
Some time ago I have presented my new design a mini QuadroCopter. This new design required a controller but tailored to the size of the mini UAV.
QuadroCopter test flight
It was quite a long time since I have written something about my QuadroCopter. Well the time has come. I have prepared a shot movie to which I invite you to watch.
Read more for some technicalities about the UAV.
Making a PCB (Printed Circuit Board) using toner transfer method
The purpose of this article is to introduce you to one of the methods of making PCB which is the toner transfer method.
Servo
A model servo or servomechanism isn’t anything more than just a small DC motor with a transmission and some electronics.
Simple Dual Thermometer
I have done a few project based on AVR microcontrollers. Recently, I have given myself a chance to try out Arduino. After my home thermometer broke down I decided to make a new one. Also it had a few drawback which required fixing. After some time I decided to use Arduino and design a shield for it which would enable this board to measure the temperature and display it. So here it is: