Friday, November 13, 2009

USB Coin/Button Cell Battery Charger

I have designed many small footprint PIC projects (such as, pocket watches and wristwatches) but I cannot make them really portable. To make them portable, I need small power sources. Of course, Coin Cell battery would be the smallest DC source that I can buy. The problem is that a Lithium button cell provides 3 V. which is not enough to drive my projects. I thought about using DC-DC step-up converter to boost 3 V. to 5 V. However, it's a little bit complex to add DC-DC converter to the projects. Moreover, my projects consume a lot of power as they consist of many LEDs, a button battery will not last for a day. So, I stopped my think at that point.

Just recently, I have found a rechargeable coin cell battery at Sparkfun.com. It provides 3.7 V. at 200mAh. I don't know that my projects will work at 3.7 V. or not. But, I want to give it a try. For portability, I want to charge the battery from my computer's USB port. So, I designed a USB coin cell battery + charger breakout board. Like many simple battery charger, I use MAX 1555 as the controller of the charger.

The schematic:




The single sided PCB (40mm x 30mm):


The LED goes off when the battery is fully charged (but the charger is still charging).
Please note that the schematic/PCB are just the design and I haven't made it yet. The parts are ordered and I will update when I complete the hardware.

Thursday, November 12, 2009

Square Wave output from DS1307

For the clock that uses DS1307 RTC chip, I want a blinking led for indication of second. So, I have placed a resistor and an LED to pin 7 (SQW/OUT) of the DS1307 like below schematic:


Schematic for Square Wave Output DS1307


With this configuration (hardware+software), the LED was blinking at 1 time/second but the blink pattern was not my expectation. The LED is Off when the clock is updated and it is On at 0.5 second later. Quoted from the Control Register section of the DS1307's Datasheet:

With the square wave output set to 1Hz, the clock registers update on the falling edge of the square wave.

I want the reverse pattern (the LED is On when the time is updated and it is Off at 0.5 second later). So, I will add an invert logic before the LED like:


Invert logic at the output of DS1307
I have a plan to use this square wave output of the DS1307 for generating an interrupt to instruct the MCU to read time from the DS1307 and I will keep in mind that "The clock is updated at the
falling edge of the square wave". The complete clock will be posted here later.
Related Posts Plugin for WordPress, Blogger...