- Fix
DutyCycle
bug. Check float precisison of DutyCycle only sometimes working #3 - Fix
New Period
display bug. Check random dropouts #4 - Update examples
- Use correct
PWM_Generic_Debug.h
file. Check missing header #2 - Display informational warning only when
_PWM_LOGLEVEL_
> 3 - Update
Packages' Patches
- Use
float
forDutyCycle
andFreq
,uint32_t
forperiod
. - Optimize code by not calculation in ISR
- Fix
multiple-definitions
linker error. Dropsrc_cpp
andsrc_h
directories - DutyCycle to be optionally updated at the end current PWM period instead of immediately. Check DutyCycle to be updated at the end current PWM period #2
- Add examples SAMD21 multiFileProject and SAMD51 multiFileProjectto demo for multiple-file project
- Improve accuracy by using
double
, instead ofuint32_t
fordutycycle
,period
. Check Change Duty Cycle #1 - Optimize library code by using
reference-passing
instead ofvalue-passing
- Add support to many more boards, such as
SAMD21E1xA
,SAMD21G1xA
andSAMD21J1xA
- Update examples accordingly
- Update
Packages' Patches
- Add functions to modify PWM settings on-the-fly
- Add example to demo how to modify PWM settings on-the-fly
- Initial coding to support SAMD21/SAMD51 boards such as NANO_33_IOT, ITSYBITSY_M4, SEEED_XIAO_M0, SparkFun_SAMD51_Thing_Plus, etc. using Arduino, Adafruit or Sparkfun core
- The hybrid ISR-based PWM channels can generate from very low (much less than 1Hz) to highest PWM frequencies up to 1000Hz with acceptable accuracy.
Copyright 2021- Khoi Hoang