I would argue that there are fewer "gotcha's" with option A. I would recommend option A to people of unknown electronics skill because there's not a lot that can keep it from working. For option B to be viable, the following conditions must be true:
- \$V_{CC_{LED}}\$ must be equal to \$V_{CC_{CONTROL}}\$
- \$V_{CC}\$ must be greater than \$V_{f_{LED}} + V_{BE}\$
- It is a topology unique to BJT devices
These conditions are not as universal as they might first seem. For example, with the first assumption, this rules out any auxiliary power supply for the load that is separate from the logic power supply. It also starts constricting values of \$V_{CC}\$ for a single LED when you start talking about blue or white LEDs with \$V_f\$ > 3.0 V and a controller running off a supply less than 5.0 V. And I think the other thing is that you can't really replace the BJT in option B with a MOSFET if you wanted to eliminate that base current.
Additionally, it is more complicated (marginally, but still) to calculate your load resistance. With option A, you can use an analogy such as "consider the transistor to operate like a switch". This is easy to understand, and then you can use familiar equations to calculate \$R_{load}\$.
\$R_{load}=\dfrac{V_{CC}-V_{f_{LED}}}{I_{LED}}\$
Compare that to what is required for option B and there is the marginal increase in difficulty:
\$R_{load}=\dfrac{V_{CC}-V_{f_{LED}}-V_{BE}}{I_{LED}}\$
Couple that with the fact that the advantages of option B often are not needed. Aside from the reduced part count, the base current from option A shouldn't increase the power consumption by more than 10%, and LEDs are rarely (unsubstantiated qualitative guess) driven fast enough for BJT saturation to matter.
The trick with diodes is they have an exponential I-V characteristic. This means that the current flowing through has an exponential dependence on the voltage, and past a certain point very small changes in voltage result in very large changes in current. The resistor basically serves as feedback, relating the voltage and current with a better-behaved linear relationship that is less sensitive to changes in voltage (linear instead of exponential). The exponential characteristic of a diode can be modelled as zero current until a thresold voltage is reached, then a constant voltage drop. Below the threshold, the diode is turned off ('in cutoff'), and above the threshold it will be forward biased.
If you put an LED in parallel with a zener diode, most likely no current will flow through the zener diode (it will be in cutoff) and all of the current will flow through the LED. This is because if you try to put more than 2v across an LED (assuming the forward voltage is 2v), you will get a very high current flow (amps, not mA) which the resistor will limit with a large voltage drop. So the circuit will end up stabilizing with 2V across both the LED and zener, but with little current flowing through the zener. You won't damage the LED so long as the resistor limits the current to something the LED can handle, but the zener will do nothing.
Best Answer
Use a high side current sense amplifier (usually best with an instrumentation amplifier) followed by a comparator and switch.
Here is the basic idea:
simulate this circuit – Schematic created using CircuitLab
By using a current sense amplifier, the resistor sensing the current can be small (less than an ohm).
Set Vtrip such that when the load current exceeds some threshold, the comparator turns on the transistor.