Fast and simple IO for Arduino, easy to use for library making.
Tested in: ATmega328p, ATTiny85.
Results in ATmega328p @ 16 MHz
Benchmarking 100000 toggles
Digital Write Manual Toggle took 472 ms - 211.9 kHz
Fast Manual Toggle took 254 ms - 393.7 kHz
Fast Auto Toggle took 329 ms - 304.0 kHz
Fast Pointer Manual Toggle took 249 ms - 401.6 kHz
Fast Pointer Auto Toggle took 349 ms - 286.5 kHz
Fast Cached Pointer Manual Toggle took 147 ms - 680.3 kHz
Fast Cached Pointer Auto Toggle took 155 ms - 645.2 kHz
DirectIO Manual Toggle took 274 ms - 365.0 kHz
DirectIO Auto Toggle took 356 ms - 280.9 kHz
DirectIO Pointer Manual Toggle took 267 ms - 374.5 kHz
DirectIO Pointer Auto Toggle took 355 ms - 281.7 kHz
Benchmark complete.