|
The phone we focused on modifying was the Nokia 3590 . The
design challenge was trying to use the current signal generated
by the 3590, a single square wave sent to 4 green LEDs, to produce
different backlight colors.
Design
Considerations:
The
design specifications called for 10 colors. Two solutions immediately
came to mind.
First,
a brute force method of 10 different colored LEDs: each color
would require at least 4 LEDs, giving a total of 40 LEDs. This
design was quickly turned down for cost, size, and power considerations
The
second idea was to use a combination of colors, red, green, and
blue, much like televisions and computer monitors. These primary
colors could be combined to give up to 8 colors with just ON and
OFF states. The addition of a half-power state could give up to
16 colors.
After
several weeks of research and testing into the possible implementation
of the RGB concept, the most cost, space, and power efficient
method was determined to be the use of a single RGB triad LED
that could give the three primary colors in a single LED package.
The
problem was now to determine how to get from the PWM sent from
the phone into separate signals that would drive the 3 colored
LEDs.
The
initial question of reading the PWM was the first to be addressed.
It was decided that if we sampled the original PWM signal from
the phone at a higher clock rate, we could use the sampling to
drive a counter circuit. A higher duty cycle PWM would give a
higher counter value, and a lower duty cycle PWM would give a
smaller counter value. In this way we would have a decoding scheme
to tell which color to output.
The
next problem was how to drive the LED circuits. Team Nokia had
to design a circuit to produce, at a minimum, an ON state, an
OFF state, and a half-power state. The simplest method to achieve
the minimum requirements would be to use combinations of tri-state
drivers. Our initial
plan was to use tri-state drivers to directly select between
ON and OFF states for each color, and an additional selection
for DIM or BRIGHT color. It was then decided that it would be
beneficial to use the phone's PWM to reference an address in a
Read-Only Memory (ROM). The use of a ROM would allow design flexibility.
If the values stored in the ROM are used to tell the tri-state
drivers what state to be in, a change in design or selection of
colors would not require a rewiring of the circuit, but would
need only a simple reprogramming of a ROM. After looking into
the availability of ROM components, it was decided that separate
ROMs for each color channel would be easier to implement.
The
next phase of design brought our attention to the use of a PWM.
For reasons of power efficiency and color selectivity, the use
of a PWM was proposed to replace the tri-state driver design.
If we could generate our own PWMs to drive the LEDs, we could
have a wider range of power and intensity selection.
How
a pulse width modulated signal powers an LED:
When
an LED is powered by a pulse width modulated signal, it is in
effect being turned on and off as the signal goes high and low.
The duty cycle of a PWM signal is the ratio of the time that the
signal is high to the total duration of one period of the signal.
The higher the duty cycle, the more power is delivered to the
LED. If the frequency of the signal is fast enough, faster than
about 60 Hz, the human eye cannot register the on/off changes
and sees a steady source of light. A lower duty cycle will give
what appears to be a dimmer light.
For
example, the following four PWMs are used to drive an LED.

The
100% duty cycle will drive the LED all of the time, the 75% driven
LED will be slightly dimmer, followed by the 25% driven LED. The
0% LED will be OFF.
If
the values stored in the ROM were outputted to a set of three
4-bit down counters, then the most significant bit (MSB) of the
down counters could be used to drive the LEDs through tri-state
drivers for stability (see
design). This would, in effect, give a generated PWM signal.
A fifth bit to the down counters was added to allow greater resolution
in the generated PWM.
Our
Design:
Our basic algorithm was to vary the pulse width of the signal.
By varying the pulse width of the signal, we could read the pulse
width of the signal and use that width to determine which color
the user selected. Three separate signals could then be generated,
each being sent to a different LED (red, green, or blue). The
combination of the 3 signals could produce the different backlight
colors.
The
three major components of our project thus consisted of:
- Decoder
- used to read the PWM signal
- EPROMS
- after the decoder reads the PWM signal, it would look up the
pulse width in the EPROM, which would deliver the 3 separate
signals to the LED drivers
- LED
Drivers - these drivers would be used to drive each
LED at a specified intensity
Through
this algorithm it was hoped that the Nokia 3590 could be used
to produce many different user-selectable colors for the LCD backlight
and keypad.

|