This repository contains the microcontroller lowlevel library, called libMcuLL. It is a inspired by many microcontroller vendor libraries like LPCopen, STM32 LL drivers and many many more. The biggest problem is that they are locked behind various tools and instead of installing many graphical tools that download various zip files I just want to get at the register definitions. Next to that, these libraries are sometimes bloated and a bit inefficient, so lets reinvent the wheel ;-).
To use this project add the inc directory of this repository to your project and to access the register definitions define the microcontroller with a preprocessor define in the shape of MCU_DEVICECODE
. See the appropriate header for supported controller. Word of warning, that it is defined there does not mean the support is by any means complete. I tend to add register definitions/features when I need them at that moment, yes this is annoying but feel free to contribute if you are missing something.
// TODO add your configuration options here
#include <mcu_ll.h>
// TODO add your configuration options here
#include <mcu_ll.hpp>
- How to add a microcontroller (TODO)
- Hardware in the loop tests (TODO)
- include architecture
- C Coding guidelines
- C++ Coding guidelines
- C++ namespacing
- C++ anatomy of a peripheral hardware definition (TODO)
- C++ anatomy of a peripheral software definition (TODO)
For version 0.1 I intend to support the all the LPC812 peripherals with some functionality to make some applications. Not all features will be supported on all peripherals.