Re: PMOS in parallel with NMOS



On May 8, 12:58 pm, Tomás Ó hÉilidhe <t...@xxxxxxxxxxx> wrote:
On May 8, 4:20 am, rickman <gnu...@xxxxxxxxx> wrote:

Before I bother to address the design issues you present, I want you
to go back and reread the last couple of messages you posted and tell
me exactly what circuit you have described. I only see described a
pair of transistors with their B-E junctions connected directly to the
power supply. I have no idea if you are talking about an emitter
follower configuration or a common emitter configuration.

Take a PNP bi-polar transistor.
Connect 0 volts directly to the base.
Connect 5 volts directly to the emitter.
Connect the anode of the LED to the collector, and the cathode of the
LED to ground.

What power supply are you using? When you turn this circuit on, how
long does it operate before the smoke comes out? Do you actually have
5 volts on the emitter? What is the voltage on the base and
collector? There is something wrong with this. Either the circuit is
not what you expect, or your supply can't drive more than a few mA and
the voltage is very low. Even then, the voltage across the B-E has to
be equal to the sum of the voltage across the E-C added to the voltage
across the LED. The LED will not turn on without at least 1.5 volts
or so. The B-E will not support more than about 0.9 volts without
burning up. So which is it, the transistor going up in smoke or the
LED not lighting?

If the circuit does not burn and the LED lights, then explain to me
what is wrong with what I have said above.


Now obviously, in everyday life, you put a resistor going into the
base, and also a resistor in series with the LED. Why? To stop:

1) Damage to the transistor from having too much base current
2) Damage to the LED from having too much current thru it

Regarding the LED, well a friend of mine has told me of experiments
where people flashed a normal LED with as much as an entire ampere,
and it worked fine because the duty cycle and the pulse width were
sufficiently low that the LED didn't get damaged. This is quite easy
to see if you take a green diode; if there's too much current, it will
glow yellow. On my own board, my green LED's stay green.

In your description above, where is the narrow pulse width??? As
others have told you, if you read the data *** for the LED they tell
you that there is a maximum current regardless of the duty cycle.
That is because at sufficiently high currents damage is done to the
LED. It may not be apparent for awhile, but it is cumulative. If you
don't believe this, then why does the data *** give you a max
current spec?


It seems quite conceivable to me that I'm experiencing the same thing
with the transistor, i.e. I'm putting a massive current thru it but
it's OK because the pulse width and duty cycle are low enough that it
won't get damaged.

Yes, if you keep them low enough. But if you connect the base and
emitter of a bipolar transistor across a 5 volt supply it will burn
up, period, full stop.


Another thing I'll look into is the current limit on the
microcontroller pins -- specifically, what happens if you try to draw
too much current. Maybe the microcontroller will die, or maybe I'll
just get an output voltage less than 5 volts. Who knows? I'll look
into it.

I can assure you that pulling too much current from an I/O pin on an
MCU is a bad thing. You think that by trying it with one part on one
day that you have proven something. Yes, you proved that one part
will suffer your abuse for one day. But again, you are creating
cumulative damage to the I/O pin and the chip is likely to fail
prematurely. Even if only one in a hundred chips won't take your
abuse, that is a *huge* failure rate for semiconductor devices.


However, if you
think the output capacitance of the MCU pin is limited the current to
the transistor, whew! you have a lot to learn.

I'm sure I could find a sufficiently low pulse width and duty cycle
that would make ths happen. Whether this pulse width and duty cycle is
within the MCU's capability, I don't know.

Make what happen?


BTW, what is the speed
of your multiplexing? Is it above 100 MHz?

There's 16 columns. Each column stays lit for 220 microseconds. The
shifting time is neglibile compared to the 220 microseconds, so it
takes about 3.5 milliseconds to perform one full flash. That gives a
frequency of about 284 Hz.

In the old days they used test equipment that would drive pulses into
the traces on a board regardless of whether a driver was already
driving the trace. One of the vendors showed us a video of a bond
wire glowing red from the excess current something like 100 times a
second. The resulting mechanical stress weakened the bond wire and
the parts would fail in the field.

Does this sound at all familiar? High current, low duty cycle, latent
defects. Are you beginning to see the picture?


The rise time of a
typical I/O pin on an MCU is on the order of a few ns. So the
multiplexer would have to be running seriously fast for the output
capacitance to have any effect on it.

Noted, that answers my question above ^

Have you tried reading some books on embedded system design? Or are
you planning to learn it all on your own from first principles?

None specifically on embedded systems, just more generic elecronics.

Try reading some on failure modes of chips. Or just listen to the
advice of your peers who sometimes know by experience what *not* to
do.


If you go back to the MOSFET parts, this circuit will work ok. The
gate does not need current drive. When the MCU is not driving the
gates can be pulled to the mid voltage point with a pair of resistors
and you can pick MOSFETs with high enough threshold voltage that there
will be no chance of either LED being on, as long as you use an
emitter follower circuit. You do still need a current limiting
resistor in the drain leg.

I'll look into it, thanks.

If you think all of this is unneeded, then please explain why the MCU
I/O pin burned out when the LED didn't have a current limiting
resistor? And no BS. Either figure it out so that you understand it
and can explain it, or don't bother replying. The MCU is not burning
out why you think it is

Each LED gets flashed as follows:
Pulse width = 200 microseconds
Duty Cycle = 1/16

The board works perfectly when set like this.

For now.

However, if I increase the pulse width to 300 microseconds, the board
dies. Perhaps it's the microcontroller that's being killed, perhaps
it's the shift register that's being killed. Maybe even the
transistors, I don't know.

This shows that you are on the hairy edge of immediate failure. What
you are doing is like people who overclock PCs. The bump up the
voltage as long as it still works. But now they are on the hairy edge
and a small rise in temperature can make the CPU start failing and
crashing. Meanwhile they have voided the guarantee on the PC and CPU
because they are likely causing premature failure. Unless you keep
your pulsed current within the spec for the LED, you are doing the
same thing. Have you checked to see what the max pulsed current
rating is for your LED compared to your max current. Oh, I forgot,
you don't have a resistor in series with your LED, so you can't
measure the current.


Thinking about it logically, what exactly changes when I increase the
pulse width? Well, current flows for a longer amount of time. The
significance of this? Well, current flow produces heat, so maybe too
much heat is building up for the duty cycle to compensate for. I don't
know, I'll look into it.

Or maybe you can compare your design to the specs in the data ***.
There is a reason that the manufacturer puts out these specs.

.