polymorph proposed this advice: "a MOSFET does not require a resistor between the Arduino and its Gate."The following calculation was done to confirm or refute that advice:2nF gate capacitance on MOSFET is common (2000pF)Assume 3.6ns rise time for Arduino outputi = c dv/dti is current from Arduino = 2.8 ampsc = 2x10^-9 Fdv = 5 voltsdt = 3.6x10^-9 seconds rise timerise/fall time 3.6ns for SPI pin Atmega328P data sheet page 321i = (2x10^-9) x 5 / (3.6x10-9) = 2.8 ampdata sheethttps://www.sparkfun.com/datasheets/Components/SMD/ATMega328.pdf
As far as using "add a resistor to drive a MOSFET Gate" rule-of-thumb, if you are using this with PWM, you'll make MOSFET heating even worse by extending the time spent in the linear region.
IG = 0.750 A = 750mA = still more than Arduino could (safely) source at once.
The most common error in calculating gate current is confusing the MOSFET input capacitance, CISS, for CEI and applying the equation....I = C(dv/dt)to calculate the required peak gate current. CEI is actually much higher, and must be derived from the MOSFET manufacturer's total gate charge, QG, specifications.The total gate charge, QG, that must be dispensed into the equivalent gate capacitance of the MOSFET to achieve turn-on is given as:QG = QGS + QGD + QODwhere:QG is the total gate chargeQGS is the gate-to-source chargeQGD is the gate-to-drain Miller chargeQOD is the "overdrive charge" after charging the Miller capacitance.You'll notice by examining curves in datasheets that in order to achieve strong turn-on, a VGS well above that required to charge CEI (and well above VGS(TH)) is often required. The equivalent gate capacitance is determined by dividing a given VGS into the corresponding total gate charge. The required gate drive current (for a transition within a specified time) is determined by dividing the total gate charge by the desired transition time. In equation form:QG = (CEI)(VGS)andIG = QG/t(transition)where:QG is the total gate charge, as defined aboveCEI is the equivalent gate capacitanceVGS is the gate-to-source voltageIG is the gate current required to turn the MOSFET on in time period t(transition)t(transition) is the desired transition timeAlso, many MOSFET's total transition times are much greater than Arduino's "3.6ns rise time". A few I have are closer to 20+ ns. And have QG values from 15-50 nC at 5-10v. Using those numbers...IG = QG / t(transition)IG = 15nC / 20ns = 15C / 20s IG = 0.750 A = 750mA = still more than Arduino could (safely) source at once. The moral of the story -- I dunno? Always check your DATASHEETS?The end.
QuoteIG = 0.750 A = 750mA = still more than Arduino could (safely) source at once.The AVR output resistance is about 25 ohm. It will never pass more than 200ma, even into a short.
Quote from: polymorph on Jul 05, 2013, 08:55 pmAs far as using "add a resistor to drive a MOSFET Gate" rule-of-thumb, if you are using this with PWM, you'll make MOSFET heating even worse by extending the time spent in the linear region.Only if you are using a combination of high pwm frequency (in which case you should definitely use a series resistor when driving a power mosfet) and too high a value series resistor. If a 100 ohm series resistor is too high to let the mosfet run cool, then you should be using a mosfet driver chip.The rule of Ib=Ic/10 to saturate a bjt is a reflection of the fact that for most bjts, the datasheet doesn't guarantee that you can get a low saturation voltage with anything less, because Vce(sat) is quoted at that ratio and hfe is quoted at a relatively high Vce such as 10V.
Grumpy_Mike, are you suggesting the specsheet is wrong?
The data sheet is right, you are interpreting it incorrectly.That is a specification, that is worst case, not what you get.
"MOSFETs don't need resistors"
@fungus. I'm not sure I know what you are talking about. I said that MOSFETs don't always need resistors, not that you should never use resistors.
That is a specification, that is worst case, not what you get.