The following projects were made for the Low Layer driver (which is part of the HAL driver) and hosted at sourceforge.net as SVN repositories (I don't do well with git) - under linux I use RapidSVN client. In the light of the new events, I decided to convert them to the SPL driver and my … Continue reading STM32 LL projects for Eclipse and TrueStudio IDEs
Stories
What kind of I2C device is TSL2591?
The TSL2591 lux sensor is described as an I2C device in it's datasheet where you won't see detailed the communication protocol so there are some problems:- it does not work with the hardware implementation of the master I2C library;- it does not work with the software implementation of the master I2C library;- but it does … Continue reading What kind of I2C device is TSL2591?
How to activate floating point for sprintf in your Low Layer based project
By defaut, a project created for Low Layer driver with STM32CubeMX use the newlib-nano C library and as direct effect, the floating point processing is removed from printf formatting function. You won't see your floating point numbers printed.Here I wrote a little tutorial about how you activate the floating point for the printf function, which … Continue reading How to activate floating point for sprintf in your Low Layer based project
A short report on my progress with LL driver
After the success with the DS18B20 temperature sensor, I started working with I2C peripheral, trying to read and set a PCF8583 real time clock but there is a catch.The only thing I used from LL driver is the initialization function generated by the CubeMX software. The other (4) functions (I2C in master mode) I got … Continue reading A short report on my progress with LL driver
Even the Low Layer Driver can get a … cold
I finished testing both applications with DS18B20 temperature sensor so both libraries, onewire and ds18b20 are working well with Low Layer API. And the compiled code is almost four times smaller. The applications are identical with the ones written for HAL API.I prepared the library for the PCF8583 real clock timer that uses the I2C … Continue reading Even the Low Layer Driver can get a … cold
Alea iacta est
I've decided, Low Layer Driver it is. So, I am in the middle of porting my libraries to LL. Just finished checking the LCD4 library, and decided to make a code size comparison between the APIs (HAL and LL).The application is a "Hello World" type, testing the functionality of the library, with the main function … Continue reading Alea iacta est
TIM6 set for 1ms timer using ST Low Layer API
This is true for the STM32CubeMX 4.22.1 and STM32CubeL1 driver 1.8.0. Actually, CubeMX does not generate the complete functional code and the snippet included will serve for me as a future reference.TIM6 general timer is used as an alternative to the Systick until the Low Layer API will have the same features for the 1ms … Continue reading TIM6 set for 1ms timer using ST Low Layer API
First success with the libopencm3 library
Obvious, the first thing to try using both a new board and a new library is to blink a LED. But there were a couple of issues. 1. The first thing I had to solve, was properly setting the clock of my board in order to have a functional microseconds delay function. The libopencm3_examples project … Continue reading First success with the libopencm3 library
Nucleo headers
As this will become my online reference regarding this board, lets store some more technical details regarding the header connectors.Arduino style connectorsWell, because of the Arduino standard connector, the microcontroller pinout wirings are a mess but I'm not the one to complain, as I did the same to a couple of microcontrollers for the sake … Continue reading Nucleo headers
One Wiring language to rule them all
Finally, my Nucleo board is supported by the Arduino project (see here the core). The first effect is that the board enters in the RAD (Rapid Application Development) category of the selected Arduino compatible boards. It means also that I can test directly the TSL2591 Lux sensor (my DIY SLR film camera needs it) using … Continue reading One Wiring language to rule them all