So I have been doing some reading and looking around recently regarding Q1.15 math and embedded C and I am surprised at the lack of libraries out there. I remember implementing some fixed-point math in my motor control days, but I would have thought that there would be an easy-to-install and easy-to-use library out there.
There has definitely been some work done in the Q16.16 space (see libfixmath), and the gcc toolchain has begun to support the _Fract type - with all of its subtypes - but it doesn't seem quite uniform as yet, particularly across manufacturers.
As a result, I decided to create a github repository with my small contributions to Q1.15 math. It isn't mature, by any means, but the end goal would be to have a library that works well with a range of 8-bit and 16-bit processors.
I have implemented - and tested! - 90% of the functions that I find most useful in embedded applications. I have also added assembly optimizations for the Microchip 16-bit line, but I could use some help porting to other processors. Any help would be appreciated!
Want to learn how fixed-point math works?