This is a collection of misc libraries, examples, etc. for stm32f103 (aka blue pill) + libopencm3 (+ FreeRTOS, sometimes) AD9850 ======== Control some DDS like AD9850 and AD9851. This library doesn't use SPI, just regular GPIO: this is simpler (imho) to implement and understand, and gives you freedom to use whichever pin you prefer. Notes ------- Support for ad9833 is completely lacking (despite some code you might find). I am uncertain about ad9850/1: the two are similar, and I have some difficulties understanding which do I have. However, I think the implementation is correct. Rotary TBL =========== Rotary encoder reading implemented with interrupts and lookup tables. This implementation uses a single interrupt, both on rising and falling. Credits to http://makeatronics.blogspot.com/2013/02/efficiently-reading-quadrature-with.html _This is not a library, just an example_ The example uses FreeRTOS just for convenience, you can easily remove it. Rotary TBL2 =========== Same as before, but with interrupts on both ports of the rotary encoder. It is more precise but, well, "uses" one more interrupt. Credits to http://makeatronics.blogspot.com/2013/02/efficiently-reading-quadrature-with.html The example uses FreeRTOS just for convenience, you can easily remove it. _This is not a library, just an example_ SSD1306 ======= Controls the oled display SSD1306. SPI is used, so you don't have complete freedom on which pin/port to choose.