All Projects → pfalcon → PeripheralTemplateLibrary

pfalcon / PeripheralTemplateLibrary

Licence: LGPL-3.0 License
Cross-platform, cross-MCU C++ template library for microcontrollers and peripheral devices

Programming Languages

C++
36643 projects - #6 most used programming language

Labels

Projects that are alternatives of or similar to PeripheralTemplateLibrary

kalman-clib
Microcontroller targeted C library for Kalman filtering
Stars: ✭ 43 (-17.31%)
Mutual labels:  embedded
brookframework
Microframework which helps to develop web Pascal applications.
Stars: ✭ 161 (+209.62%)
Mutual labels:  embedded
EmbeddedTools
Additions to the model-based DSL for deploying Java and Native projects to remote targets
Stars: ✭ 14 (-73.08%)
Mutual labels:  embedded
kocherga
Robust platform-agnostic Cyphal/DroneCAN bootloader for deeply embedded systems
Stars: ✭ 21 (-59.62%)
Mutual labels:  embedded
bigbug
Easy Microcontroller Debugging Tool
Stars: ✭ 37 (-28.85%)
Mutual labels:  embedded
rigel
[UNMAINTAINED] HMAC-SHA512 implementation optimized for embedded devices
Stars: ✭ 14 (-73.08%)
Mutual labels:  embedded
js-docker
Container deployment of TIBCO JasperReports® Server
Stars: ✭ 115 (+121.15%)
Mutual labels:  embedded
TypeScriptXX
🧷 Stay safe! Type-safe scripting for C++ using TypeScriptToLua and CMake with auto-generated declarations.
Stars: ✭ 33 (-36.54%)
Mutual labels:  embedded
async-stm32f1xx
Abstractions for asynchronous programming on the STM32F1xx family of microcontrollers.
Stars: ✭ 24 (-53.85%)
Mutual labels:  embedded
gpib-usbcdc
Interface bridge between GPIB and USB communication device class
Stars: ✭ 81 (+55.77%)
Mutual labels:  embedded
signalo
A DSP toolbox with focus on embedded environments written in Rust.
Stars: ✭ 71 (+36.54%)
Mutual labels:  embedded
kernel-syslog
📝 Kernel module that can be used as a replacement for syslog, logger or logwrapper
Stars: ✭ 37 (-28.85%)
Mutual labels:  embedded
lwprintf
Lightweight printf library optimized for embedded systems
Stars: ✭ 98 (+88.46%)
Mutual labels:  embedded
grisp-software
Toolchain and Examples for GRISP
Stars: ✭ 28 (-46.15%)
Mutual labels:  embedded
irq
Utilities for Interrupt handling
Stars: ✭ 12 (-76.92%)
Mutual labels:  embedded
BIPES
BIPES: Block based Integrated Platform for Embedded Systems allows text and block based programming for several types of embedded systems and Internet of Things modules using MicroPython, CircuitPython, Python or Snek. You can connect, program, debug and monitor several types of boards using network, USB or Bluetooth. No software install needed!
Stars: ✭ 72 (+38.46%)
Mutual labels:  embedded
infinitree
Scalable and encrypted embedded database with 3-tier caching
Stars: ✭ 80 (+53.85%)
Mutual labels:  embedded
simcom dam
Examples for simcoms downloadable modules (Qualcomm SoC)
Stars: ✭ 25 (-51.92%)
Mutual labels:  embedded
uC-CPU
Designed with Micriμm's renowned quality, scalability and reliability, the purpose of μC/ CPU is to provide a clean, organized ANSI C implementation of each processor's/compiler's hardware-dependent.
Stars: ✭ 31 (-40.38%)
Mutual labels:  embedded
lv lib rlottie
Lottie animation support for LVGL
Stars: ✭ 16 (-69.23%)
Mutual labels:  embedded
Peripheral Template Library
===========================

Peripheral Template Library is a project to develop an efficient
cross-platform library for microcontrollers. It provides
consistent API to control basic blocks of any microcontroller -
GPIO, timers, clocks, ADC, etc., then provides API/implementation of
standard protocols to access peripheral devices, like SPI, I2C, UART,
1-Wire, etc.

To achieve high-level efficiency, PTL is built using (C++) templated static
types, allowing to apply aggressive compile-time optimizations,
achieving the efficiency level of the C code purposedly written for
specific MCU. Using templates also allows to provide optimized protocol
implementations utilizing specialized MCU hardware blocks like SPI/I2C
controllers (default implementations provided use bitbanging over GPIO).

The library is currently achieving inital code stabilization, though APIs
are still not stable, there're lot of refactoring to do, and there may be
some non-ideal C++ code around.

Current targets supported (together with example boards) are:

    * TI MSP430
        * MSP430 Launchpad
    * Atmel AVR
        * Arduino Duemilanove
    * ARM Cortex-M
        * ST STM32
            * STM32VLDISCOVERY
        * Energy Micro EFM32
            * EFM32GG-STK3700
        * TI Tiva C TM4 (former Stellaris LM4)
            * Stellaris/Tiva Launchpad

Note that different targets have different level of hardware support.

For setup instructions, refer to docs/getting_started.markdown
(https://github.com/pfalcon/PeripheralTemplateLibrary/blob/master/docs/getting_started.markdown
online). More documentation is available in docs/ directory.

The Peripheral Template Library is licensed under GNU Lesser General Public
License (LGPL), version 3 or later. Please review detailed terms in the
included LICENSE file.

Author: Paul Sokolovsky {pfalcon at users.sourceforge.net}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].