I have a 3 x 1.5V NiMH battery pack giving a supply voltage in the range [3.0V … 4.5V] depending on the remaining capacity. In order to prolong battery life I need to cut power from the entire PCB except for the MCU sleep module that consumes a few uA. The catch is that the sleep module is rated at [1.8V … 3.6V] and I cannot afford an LDO for this purpose.
Is there a way to achieve a voltage drop between 0.9V and 1.2V without any significant current draw?
Best Answer
This microchip appnote suggests in section 8-3 to use some rectifier diodes in series as shown in Figure 3-1, which converts a 5V supply into an approximately 3.9V supply.
Each diode will give you a voltage drop, depending on the type of the diode and the current through the diode. Note the inclusion of R1, which the appnote mentions
The downside of this approach would be that you will lower the voltage even when you are below the 3.6V, so you will not have the full operating range.
Be extremely careful when selecting diodes; \$V_F\$ is not constant with respect to current or temperature. Here's an example relationship from the Fairchild 1N414 datasheet:
The forward voltage is proportional to the log of the current until about 100mA, when it begins to increase more rapidly due to carrier saturation. You mention that your device has a minimum current of a few μA, for which you probably paid dearly. You could increase this quiescent current to a little more than 20 μA with a 220 kΩ resistor and put 2 diodes in series to get 450mV drop per diode and a safe output voltage of 3.6V when your batteries are at 4.5V.
Of course, when the MCU wakes up and draws more current (assuming ~10mA) the voltage drop will go up to about 2⋅700mV=1.4V. Instead of operating from your batteries in their full charge range, you'd only be able to discharge your batteries to 1.8V + 1.4V / 3 = 3.2V / 3 = 1.06 V/cell. There's some optimization to be had in increasing or decreasing the resistor value and diode count, but it's difficult to get good results as you could with an LDO.
Conclusion: Don't use this approach unless your application is extremely cost-sensitive!