====== libLPC ====== A library for LPC microcontrollers. ===== HAL ===== The HAL provides a layer of hardware abstraction for the internal peripherals of the microcontroller. The interface is a bunch of functions defined in C header files. Where possible, the implementation in C source files is common for all microcontrollers. Where necessary, each microcontroller or controller family gets its own implementation. ==== ADC ==== ==== DAC ==== ==== CAN ==== ==== DMA ==== ==== GPIO ==== ==== I2C ==== ==== SPI ==== ==== UART ==== ==== TIMER ==== ==== USB ==== ==== CRC ==== ==== SYSTEM ==== ===== API ===== The API provides a higher-level interface to basic functions (IO, Timer, etc.) and external peripherals. The interface consists of C++ classes/singletons. Due to the uniform HAL, the API has one implementation for all controllers. Callbacks should be provided for all important functionality to make using classes together easy. ==== Analog I/O ==== ==== Digital I/O==== Pin & Port & Bus ==== Communication ==== Protocol Handler, printf, Stream === USB === === Serial === === CAN === === Ethernet? === ==== Timer ==== Delay, Ticker (s,ms,µs), Events ==== Miscellaneous ==== Buffers (FIFO, Ring, etc.), Filesystem?, Callchain