Given a 3v power source (2xAA batteries) and a microcontroller, what's the simplest cheapest way to generate a 3.6v 30ms 500mA pulse (to control a solenoid)?
Update based on comments
So you have a solenoid with 9 Ohm resistance and need to push 500 mA through it. At this peak moment you'll have 4.5 Volts (9 * 0.5) on this solenoid, so 3.6 do not look enough (if you are sure it is enough, then probably the required current is less).
I would take some step-up convertor chip (based on what I can get ready from the stores around - in my case it is
MC33063 which is available in convenient DIP or SOIC packages for far less than $1. Then I google for "MC33063 datasheet pdf" and browse this document to find out the typical schematics. I see I'll need few more components - resistors, capacitors, inductance. They say the chip is able to provide up to 1.5 A so the rest you need is to choose proper values according to their instruction, for, say, 5V output voltage. Your batteries will be serving almost 3A at this moment so it is important they are fresh.
I suspect here is some misunderstanding there :)
You usually can control either voltage or current, not both. I.e. you can apply given voltage to solenoid and see what current will flow (it will not rise immediately).
The core idea of step-up conversion, uses inductance itself. Imagine that your controller apply the voltage to the coil. Coil starts rising the current and when the current becomes large enough, you switch it to capacitor. Coil could not stop the current instantly so it charges capacitor until the current falls to zero. At this moment capacitor has the maximum charge and maximum voltage. Often diode prevents back flow from capacitor to the coil.
Look at this picture: http://paginas.fe.up.pt/~ee07229/images/classicDCDCconverter400px.gif
Imagine there is a MCU-controlled transistor (perhaps, MOSFET) instead of the key.
Now we only need to understand better what type of load / solenoid you use. perhaps it can get more than 500mA current with less than 3.6 Volts. This depends on its resistance...
Anyway it may happen that cheapest / simplest way is to use the third battery.
It depends on the load in detail.
For a solenoid most, most will tolerate a higher voltage briefly without problems. Most, once energised, will continue to hold in with a much lower voltage than was required to get them operated.
With those assumptions in mind, let's suggest a circuit that delivers a nominally 6v peak pulse, decaying exponentially with a time constant determined by the size of the capacitors you use, and the current drawn by the load. It should be possible to get 30mS with reasonable value components, though you may find that less than 30mS will work OK with your load, especially with the higher voltage start.
Use a voltage doubler, consisting of two capacitors. To deliver 30mS of 500mA, which is a charge of 15mC, would require a 1.5v drop in a 10mF (10000uF) capacitor. At the low voltage you have, that's easily do-able.
Put one cap to ground, and use a fixed resistor to charge it to 3v. This is your pedestal cap. This is a permanent connection, make the resistor as large as you can so that it still meets your recharge time, given the duty cycle you want.
The second cap is your 'flying cap'. Charge this with 2 resistors, one to ground, one to 3v, again the largest resistors you can for your duty cycle.
When you want to pulse, use a transistor (BJT, FET, or a relay even!) to connect the 0v of the flying cap to the +ve of the pedestal cap. The flying cap +ve goes up to 6v, and will deliver 500mA for 30mS while dropping back to 3v at the end of the pulse, when switched into your load.
A pedestal cap is to isolate its voltage droop from your +ve supply rail. If your battery supply is stiff enough, or you use a supply decoupling cap much larger than 10mF, you may get away with standing the flying cap directly onto the 3v supply. However, the resulting supply droop may disturb your micro, which is why I've suggested the slightly more complicated two cap approach first.
A micro power booster would do the trick. This one can generate 5V from voltages as low as 1.5 volts: -
Choose R1 and R2 to give you the desired output voltage of 3V6.
There are several devices like this from TI and LT. Quiescent current in non-switching mode is 140 uA and the device can be powered down to 10nA. When not switching (or powered down) the capacitor will discharge slowly so ensure R1 and R2 are as big as possible and that C2 is ceramic with low leakage. D1 should also be chosen to be a low leakage type (probably silicon rather than a schottky diode.
This is basically user44635's idea, except with the capacitor voltage going negative. I drew it to see how to minimize the number of components.
When Q1 is off, C1 is charged through R1 and D1.
When Q1 is on, C1 is discharged into L1 through Q1 and Q3.
D3 dumps the energy of L1 back to C1 when turning off. It may slow down the solenoid disengaging as the way it is.
The components are cheap, but there needs to have one relatively big capacitor and the time to charge it. Although R1 can be easily modified to a transistor for fast charging. Overall, I am not sure this is the way versus a simple booster such as the one suggested by Andy aka.