Experimental C++ library for bare-metal ARM Cortex-M platforms
This library is mainly a personal project. For now, it is nothing more than a testbed for experiments and tests. It is in a very immature and early state of development and contains most certainly lots of bugs and issues that need to be fixed. You can use it freely in any way you like but it comes with absolutely no warranty at all! - You have been warned! :-)
- NXP LPC81x
- NXP LPC84x
- NXP KV4x
- NXP KV5x
- bitmask class v1.1.2 - Copyright (c) 2016-2017 Andrey Upadyshev
- CMSIS-Core(M) - currently using master commit as of 28 May 2020
- FatFs: Generic FAT Filesystem Module Source Files R0.14
- FreeRTOS Kernel Release v10.4.1
- fsl: Freescale drivers from Kinetis SDK Version 2.8.0
- lfs: Little fail-safe filesystem v2.2.1 - currently using master commit as of 9 April 2020
- span: std::span implementation for C++11 and later - currently using master commit as of 3 June 2020
- usbhost: USB Host Library version 3.0 - currently using master commit as of 15 April 2020 (work in progress...)
- usflib: Micro String Format (μSF) library - currently using master commit as of 14 January 2019
Alone we don't go far... This library uses some code and ideas taken from other persons and projects:
- The startup code is heavily based on the Cortex-M Startup project, part of the µOS++ IIIe project. <-- Great project, check it out! Copyright (c) 2016 Liviu Ionescu.
- The Delegate class is based on the Delegate implementation from Nikita Chernyi. A detailed description of the original implementation can be found here.
- The low level peripheral drivers for the LPC81x family of MCUs are based on the NXP LPCOpen LPC8xx supplied by NXP. All rights reserved. (c) 2017 NXP B.V.
- The low level peripheral drivers for the LPC84x family of MCUs are based on the LPC845 Example Code Bundle MCUXpresso supplied by NXP. All rights reserved. (c) 2017 NXP B.V.