modm
avrINT
Our great sponsors
modm | avrINT | |
---|---|---|
5 | 1 | |
697 | 2 | |
2.3% | - | |
9.1 | 0.0 | |
6 days ago | about 3 years ago | |
C++ | C++ | |
Mozilla Public License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
modm
-
Looking for well written, modern C++ (17/20) example projects for microcontrollers
Have a look in the modm.
-
how come there aren't any open source drivers for MCUs?
Something like https://modm.io ?
-
C++ for embedded - low level applications
On my way i found modm.io which can generate a HAL for (a lot) STM32 controller. They use C++17 and have lots of examples for different controllers the STM32 F4 Disco examples show some applications.
- Modm: A C++20 library generator for AVR and ARM Cortex-M devices
avrINT
-
C++ version to avr/interrupt.h and util/atomic.h
I wrote a C++ version to the the C headers avr/interrupt.h and util/atomi.h from AVR Libc. Nothing especial here, I'm using RAII to implement an atomic scope to execute a block of code instead the clever macro ATOMIC_BLOCK that uses a for loop and the GCC attribute cleanup. The macro functions cli/sei() were replaced by always_inline functions defined inside a namespace:
What are some alternatives?
EmbeddedProto - Embedded Proto is a C++ Protocol Buffers implementation specifically suitable for microcontrollers. It is small, reliable and easy to use.
MiniCore - Arduino hardware package for ATmega8, ATmega48, ATmega88, ATmega168, ATmega328 and ATmega328PB
libopencm3 - Open source ARM Cortex-M microcontroller library
avrIO - C++11/17/20 library for manipulating I/O port pins and I/O registers of AVR8
deepC - vendor independent TinyML deep learning library, compiler and inference framework microcomputers and micro-controllers
avrWDT - C++11 header-only library to enable and disable the watchdog timer(WDT) of an AVR8
etl - Embedded Template Library
avrcxx - Collection of C++11/17/20 libraries to program AVR8
threeboard - A fully-functional open source and open hardware mechanical USB computer keyboard with only three keys!
ssd1306 - C++11/17 driver to operate SSD1306 OLED using AVR8.
platform_specific_components - Low-level components and hardware drivers for various Cyphal-related projects
Marlin - Marlin is an optimized firmware for RepRap 3D printers based on the Arduino platform. Many commercial 3D printers come with Marlin installed. Check with your vendor if you need source code for your specific machine.