Archive for October, 2005
As a glutton for punishment, I find it is best to keep as many irons in the fire in terms of micro-electronic projects as possible.
My latest fascination is with the bi-directional properties of light emitting diodes. From reading a few dry papers on using LEDs as inputs, I have found there are at least two ways of accomplishing this. First an LED by itself will generate a tiny DC voltage when exposed to a light source of the same or higher frequency of the LED. I think of this as photovoltaic operation. Any high-impedance voltmeter can measure this voltage, and it ranges based on intensity from 0 to 1.5 volts. The other, and perhaps more useful method, is using the LED as a light dependent capacitor. By reverse biasing the LED, a charge is placed on the junction. This charge is then dissipated by the LED’s photovoltaic properties once the reverse bias is removed.
So, using a microcontroller, I have been able to take advantage of this knowledge to create a simple ‘interactive interface’ with a pair of LEDs. The process works like this:
Breadboard setup: 2 LEDs, 2 current limiting resistors in series with the LEDs. LED anodes are connected to bi-directional digital I/O pins on the mcu. LED cathodes are connected to bi-directional digital/analog I/O pins on the mcu.
Step 1> Forward bias the led array (all LEDs lit). This entails setting the anode connected IO lines to output a HIGH logic state (current source) and the cathode connected pins to output a LOW logic state (current sink).
Step 2> Reverse bias the first led in the array. I accomplish this by switching the rolls of the anode and cathode pins. Anode = sink, Cathode = source. This charges the capacitance of the led up to a logic HIGH potential (+5v).
Step 3> Switch the cathode connected pin into a high-z input mode and connect it to the microcontrollers ADC.
Step 4> Perform an analog to digital conversion on the LED, reading the voltage potential stored in the LED. I’ve obtained values around 3.3 volts while the led is “dark” and as low as 0.9 volts while the led is brightly lit by the rest of the array via a mirror. Using a red laser pointer fully discharges the LED resulting in a 0 volt sample.
Step 5> Forward bias the LED again, switching the cathode connected pin back into a digital output of a logic LOW state.
Step 6> Repeat steps 2 through 6 for remaining LEDs in the array
Step 7> Dump ADC results to the serial port for analysis by the host PC.
On paper, this sounds like a lot of work, but thanks to the mighty Microchip PIC microcontroller, it’s really just a series of setting bitwise registers on the PIC and reading the ADC results.
I want to try connecting an op-amp inline with the ADC sampling to try to increase the response time of the led… right now I’m using a 1ms analog sample time, which is causing a slight flicker in my array. If I can halve that it should eliminate any flicker. The problem with a faster sample time is I loose dynamic range or “brightness sensitivity”. I believe this is due to the fact the LED does not discharge fast enough.
A forum member on the linear1 forum recommended I place a resistor across the LED to speed up this discharge. It is certainly worth trying, and simpler than wiring in an op-amp!
Stay tuned…
I’ve written a new article; “Three Watts of Light“. The subject is my first experiences with ‘true’ illumination grade solid state lighting. I’ve played with a lot of leds over the years, but these leds are in a class of their own. The light they generate and the power they require makes it a “whole nother ball-game”.

I finally became bored with the word-press default theme – not that there is anything wrong with it, but hey, change is good right?
This new theme is called “Ocadia” designed by Becca Wei.
I like the shaded boxes in the side-bar and the fact this theme is not overloaded visually or functionally. Some of the themes out there have way too many links, buttons, do-dads and hoopla for simple ‘ol me.
UFO … That’s what they’re called, maybe because they are around, maybe because the vendors grew weary of calling them luxeon clones. No, I’m not writing about some errant weather balloon, the planet venus, or my neighbors truck seen through beer goggles… I’m writing about some high-output LEDs
These are the first of any ‘next gen’ leds I’ve worked with … I’m stoked they are so tiny … its often hard to tell the scale when you just see pictures of these things online with nothing of known size in the shot.
the big black module is an RGB ufo, with three one watt emitters in a single package. It’s wired as a common anode device… should work out well with my led controller project. The small led in the top of the picture is a white piranha led. The smaller silver module is a blue UFO.

This is the die of a blue ufo, running at a greatly reduced capacity. I still had to stop my camera all the way down to take this shot with any amount of detail … (1/4000s f7.3)
More pictures to come. I have a red, blue and green mounted to an old 586 heatsink which provides ample cooling to the 3 watt load, I’m going to work on mounting the driver circuitry to the backside of the heatsink and should have some pictures shortly!



