I’m working on a motor controller, and I need 6 pwm outputs with the same frequency and phase from my Arduino Uno.
Any frequency between 20khz and 30khz is fine for me.
Arduino Uno has three different timers, each driving two outputs, timer 1 is a 16 bit timer, whilst timers 0 and 1 are 8 bit timers.
I cannot find a solution because it seems thar the OCRA top limit mah be used just for one of the two timer output. Is these any alternative solution for setting the same freq and phase on the three timers, between 20k and 30khz?
Thanks a lot
Hi, I try to answer your question, I once had the same problem and after several tests I had bought the module specifically for motor management.
It simplifies a lot the job, this module can be found on the official site of arduino or on Amazon.
I hope I helped you
The Uno has 3 timers, each driving 2 PWM pins, but timer0 also used for delay(), micros() and millis().
If you reprogram the timers for 20kHz operation you will stop those calls from working properly.
Unfortunately each of the timers on the Uno is different in details, so you have to read lots of bits of
the datasheet for setting them up.