In my experimentation, I've used only BJTs as switches (for turning on and off things like LEDs and such) for my MCU outputs. I've been repeatedly told, however, that N-channel enhancement-mode MOSFETs are a better choice for switches (see here and here, for examples), but I'm not sure I understand why. I do know that a MOSFET wastes no current on the gate, where a BJT's base does, but this is not an issue for me, as I'm not running on batteries. A MOSFET also requires no resistor in series with the gate, but generally DOES require a pull-down resistor so the gate doesn't float when the MCU is rebooted (right?). No reduction in parts count, then.
There doesn't seem to be a great surplus of logic-level MOSFETs that can switch the current that cheap BJTs can (~600-800mA for a 2N2222, for example), and the ones that do exist (TN0702, for example) are hard to find and significantly more expensive.
When is a MOSFET more appropriate than a BJT? Why am I continually being told that I should be using MOSFETs?
Best Answer
BJTs are much more suitable than MOSFETs for driving low-power LEDs and similar devices from MCUs. MOSFETs are better for high-power applications because they can switch faster than BJTs, enabling them to use smaller inductors in switch-mode supplies, which increases efficiency.