megaAVR_Slow_PWM

This library enables you to use ISR-based PWM channels on an Arduino megaAVR board, such as UNO WiFi Rev2, AVR_Nano_Every, etc., to create and output PWM any GPIO pin.

Author
Khoi Hoang
Website
https://github.com/khoih-prog/megaAVR_Slow_PWM
Category
Device Control
License
MIT
Library Type
Contributed
Architectures
megaavr

It now supports 16 ISR-based PWM channels, while consuming only 1 Hardware Timer. PWM channel interval can be very long (ulong microsecs / millisecs). The most important feature is they're ISR-based PWM channels, supporting lower PWM frequencies with suitable accuracy. Their executions are not blocked by bad-behaving functions or tasks. This important feature is absolutely necessary for mission-critical tasks. These ISR-based PWMs, still work even if other software functions are blocking. Moreover, they are much more precise (certainly depending on clock frequency accuracy) than other software-based PWM using millis() or micros(). That's necessary if you need to control devices requiring high precision. Now you can change the PWM settings on-the-fly. Now supporting MegaCoreX.

Downloads

Filename Release Date File Size
megaAVR_Slow_PWM-1.2.1.zip 2022-03-05 48.27 KiB
megaAVR_Slow_PWM-1.2.0.zip 2022-02-07 50.35 KiB
megaAVR_Slow_PWM-1.1.0.zip 2021-11-11 67.36 KiB
megaAVR_Slow_PWM-1.0.0.zip 2021-09-27 60.68 KiB