PWM siganl to VNH3SP30

I’m having trouble getting my VNH3SP30 to drive my motors. I am using the IO pins of an ATMega32 to control the motor controller. The problem seems to be with how I’m sourcing the PWM signal.

In my setup, for power I have 5 volts on the ATMega32 board and have 9 volts connected to VIN on the motor controller board.

On the smaller pins on the VNH3SP30 I have 5volts coming from the ATMega32 board into the “+5v (IN)” pin and I have the grounds connected together. (Motor controller pins 1Diag/EN, 1inB, Vin (little pin), and 1CS are currently unconnected if that matters.)

I have one ATMega32 IO pin going to 1inA and one IO pin going to the 1PWM. When I pull both pins high (so using 100% duty cycle), the motor does not run. If I bypass the ATMega32 and move the 1PWM to come directly from the 5v battery pack the motor runs. (This shows the board works. Also, I have verified both IO signals are actually high, 5v, using a meter.)

Could it be that I’m not able to source enough current from the ATMega32 to input into the VNH3SP30’s PWM? The ATMega32 says it can source 40 mA and the VNH3SP30 says it needs around 10 uAs so I don’t know what is wrong.



How did you verify that you were pulling both pins high? You should also measure the voltage on the PWM line when you think you are driving it high. You might not have the I/O pin configured as an output, and you might just be turning on the pull-up resistor instead of outputting a true high.

Keep in mind that the board has a 10k pull-down resistor on the PWM line. (I just noticed the schematic on the web page says 1k, but it’s 10k). So your input current for a 5V signal is more like 0.5 mA. That should be no problem for a driven high output, but the pull-up value is probably much bigger than 10k.

- Jan