avrINT
avrIO
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.
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:
avrIO
-
Floating inputs matters
[@C++ land] BTW, I have a library called avrIO that allows a better syntax that is type safe and without overhead if compared to avr-libc:
-
[C++@AVR8] Operations on I/O registers and I/O port pins
I have created a guide to help someone eventually interested to do a contribution to support a new MCU: https://github.com/ricardocosme/avrIO/blob/main/CONTRIBUTING.org
-
[C++] Operations on I/O registers and I/O port pins
I've updated avrIO to allow operations on multiple pins and also actions on registers and its respective bits.
-
[C++] Exploring type safety and expressiveness on IO registers
With avrIO the programmer can write:
-
[AVR8] C++20 Concepts and traits class to help abstract I/O port pins
Yes, I know it, but this snippet is from a C++11/17/20 library: avrIO.
What are some alternatives?
MiniCore - Arduino hardware package for ATmega8, ATmega48, ATmega88, ATmega168, ATmega328 and ATmega328PB
avr-libstdcxx - Docker project to build AVR C++ compilers in freestanding mode as an example implementation of P0829. Related to https://gitlab.com/avr-libstdcxx
modm - modm: a C++23 library generator for AVR and ARM Cortex-M devices
ubuntu-toolchains
avrWDT - C++11 header-only library to enable and disable the watchdog timer(WDT) of an AVR8
inout_thermo - ATtiny85 Inside&Outside thermometer written in modern C++
avrcxx - Collection of C++11/17/20 libraries to program AVR8
ssd1306 - C++11/17 driver to operate SSD1306 OLED using AVR8.
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.
svntogit-community - Automatic import of svn 'community' repo (read-only mirror)