I have a 6 volts DC motor and want to control it with stm32 and change the rotation direction. Previously, I designed an H-bridge, I used for the upper part IRF9630 and the lower part IRF630,I connected the HIGH part to 12V and the motor didn't work and even move. After that I changed MOSFETs and used IRF4905 and IRFz44n.But it didn't work again. Can anyone tell with the output voltage of 3.3v micro stm, IRFz44n can be fully on ?and what resistors should be used for gate and source? This is what i have been made...
If you don't use PWM, you just get the motor running at whatever speed the supply voltage determines - it's roughly proportional.
Your bridge should be OK, the components are more than sufficient.
You do know that you have to set one of the PWM inputs high at the same time as the diagonally opposite high side control input to get a current path through the motor and bridge? There are two operating configurations, that achieve forward and reverse running of the motor, diagrammed below (from here )
Obviously those switches correspond to the FETs. When operating in forward PWM, the top switch would be closed, and the bottom one opposite will be switching on and off, providing a mean voltage across the motor less than with the bridge full on. Since the motor has some inductance, the current continues when the low side FET is off, and circulates around the top loop when the body diode across the top FET conducts. If you don't want to use PWM, you're effectively running at 100% PWM, and just leave the low side switch on.