I have a few questions regarding generating PWM waveforms in audio and motor driving applications. I want to mess around a bit more with switching, gate driving circuitry and motor control/ modulation techniques.

I am currently looking for practices and general information, and I might be at a point where I want to try some things myself. If I can use the same hardware to play around with class D audio amplifiers at a later stage, that would be great. I want to build an evaluation board with 8 flying capacitor output stages with the option to short out the capacitor to the output, so I can mess around with bridged stereo audio, 3 phase motor drives and multilevel inverters.


simulate this circuit – Schematic created using CircuitLab

Using a simple microcontroller, we have access to decent methods of generating PWM waveforms. These waveforms are generally generated using a counter that changes an output on a trigger point or timer overflow. For example the STM32F103 can run the timer at 72MHz. This results in a tradeoff between output frequency and resolution. If for example we want a 12 bit resolution, we are limited to about 17kHz.

Some more expensive or dedicated microcontrollers can run the timer at up to 256MHz, but this is the highest I could find.(MSP430F5171) This is probably fine for simple or higher powered motor drivers (where we can't switch that fast anyway).

I tried this method before with a relatively low powered class D amplifier made up of a TI Tiva C launchpad and some MOSFETs. It sounded horrible.

In audio applications we often see a PWM modulator build from comparing an analogue value with a sawtooth or triangle wave in the order of 100 KHz to 1MHz (the class D amplifier). The output resolutions seem limited only to the performance of the analogue circuitry.

There are a few examples where an I2S signal can be converted into a PWM shape (TAS5558). I would like to know how they achieve this. For example, a 376KHz PWM frequency is mentioned, but no resolution, delay or timing values are given. These PWM DSPs look interesting but are really meant for audio, not for motor control.

It seems to me that having a higher resolution PWM in the order of 100 KHz can be beneficial for motor applications. I am not completely sure why.

  • What are common practices of generating PWM waveforms?
  • Is there much difference between the hardware of Class D amplifiers and motor drivers? Especially regarding the final stage (modulator->gate drive->MOSFETs).
  • Would motor drivers benefit from higher resolution PWM modulators?

Any other good sources regarding these topics are very welcome.

  • \$\begingroup\$ I am curious how you plan to controls those four floating PWMn inputs. \$\endgroup\$ – Oldfart Nov 28 '18 at 11:30
  • \$\begingroup\$ Yeah, I should maybe change those drawings. The input should be referenced to 0V. I'll probably chose an RF based isolated gate drivers like the Si8235 or other bootstraping gate driver IC, but that is a whole different topic. \$\endgroup\$ – Sap Chicken Nov 28 '18 at 11:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.