AVR to drive 12V 1A motor

avrdc motormosfettransistors

I have AVR that needs to drive 12V 1A motor.
I always used NPN BJTs (2N2222), but reading the datasheet says the MAX is 1A (which means I cannot use it here).
Instead, I willing to use MOSFET. I have several N-Channel IRFZ44N.

  • Reading the datasheet says Vgs(th) is 2-4V, and I am driving it from the AVR (5V), should be fine, right?
  • N-channel MOSFET needs to be on the low-side, right? means Source to GND, Drain to motor.
  • Do I need resistors on the Drain, Source paths?
  • Gate current – the AVR will drive max of 20mA 5V on the gate to switch the FET on, do I need resistor between the AVR pin and the Gate pin? I don't want to overload the AVR, and I cannot find the current the FET pull.
  • Do I need pull-down resistor on the AVR pin – Gate path, connected to GND?

I never used FET transistors, so I had may some newbie questions (and this is after reading the datasheet for several times and spending hours online reading about FET)

On one of the sites I saw this basic diagram for N-channel MOSFET:
MOSFET
Is the diagram will be accurate for connecting my AVR to the Motor? I mean, no resistors at all (only the pull-down one)? won't it overload the AVR?

Thanks.

Best Answer

You should use a logic level gate MOSFET, not the IRFZ44N, which is not guaranteed to work. Rds(on) is specified at Vgs = 10V not 5V. Vgs(th) is for 250uA. I think your motor needs more than 250uA. It would probably sort-of work badly if you try it.

Connection is correct, however you must put a diode across the motor to keep the MOSFET from avalanching when it turns off.

A 20K or 50K pull-down is a good idea- it keeps the transistor from turning on partially if the GPIO is high-impedance.

A series 1K to the GPIO makes it a bit more foolproof. No other parts needed.