ID_421C_BNS-Solutions_Segmented - Renesas e
Download
Report
Transcript ID_421C_BNS-Solutions_Segmented - Renesas e
ID 421C: Designing with
Segmented LCD Displays
BNS Solutions
Travis Weisberger
Embedded Systems Engineer
13 October 2010
Version: 1.3
BNS Solutions
A little something about BNS…
Engineering consulting firm
Located in Walpole, Massachusetts
Renesas Platinum Alliance partner
Work in numerous industries including
Battery systems
Medical
White goods
Service industries
Avionics
LED Lighting
Entertainment
Industrial controls
Engineering Education
Embedded Tools
“Engineering and Technical Marketing Solutions as simple as possible, But Not Simpler™”
2
Bio
Travis Weisberger
Northeastern University BS CE/EE
With BNS Solutions since 2009
Started LCD with DPAC (Dynamically
Controlled Alarm Clock)
– Graphic LCD which uses same methods
Jerry Issa
3
University of Michigan BSE in CE
Boston University MS CSE
With BNS Solutions since 2007
First implemented LCD control in
home heating solutions
Innovation
4
Agenda
Hardware
What is a segmented LCD
Types of LCDs
Controlling the hardware
Software
Remapping backplane
Information blocks
The “screen” approach for controlling a system
Questions
Feedback
5
The Hardware
6
LCD (Liquid Crystal Display)
There is a viewing angle(usually 12 or 6 o’clock)
Not light emitting, so require a backlight in low light
situations
Mostly concerned with twisted nematic (TN) displays
Light is polarized and then either blocked or passed by the
liquid crystals, causing light and dark areas
Applying voltage twists the liquid crystal to create visual
segments
7
Types of TN LCDs
Reflective - has reflector behind, used only in well lit
environments, cannot be backlit
Transmisive - requires light to pass through, must be backlit
Transflective – hybrid that can work backlit or in bright
environments
8
Driving an LCD segment
Without a LCD driver
2 digital I/Os
Waveform
9
Multiplexing
If there are more segments than available pins, the
segments will need to be multiplexed between multiple
backplanes (or commons)
The disadvantage is increasing drive complexity and reduced
contrast
10
Bias
When there are greater 1 backplane, the voltage must be
biased to several levels
The bias level is defined by the LCD itself
Bias is using several drive voltages which are multiples of
each other
11
Designs for 2 Backplanes
Without a LCD
driver
Several methods
using:
4 digital I/Os
2 digital I/Os
Backplane
waveform
12
4 I/Os
By using 4 I/O pins
for the commons,
the configuration is
easy to implement
5V – output high
2.5V – one
high/one low
0V - both low for
0V.
13
2 I/Os
By using 2 I/O pins
for the commons,
the configuration is
easy to implement
but requires the tristate to be used
5V – output high
2.5V – tri-state/
float
0V – output low
14
Backplane Code
Show code in HEW
15
DC Drift
One problem with LCDs is with DC drift
Occurs when a constant non-zero voltage potential
is held on a single segment
Causes the crystals in the segment to “drift” to a
half on-half off position, which gives a grey look
(never clear, never black)
Changing potentials will solve this
Persistent application will cause permanent
degradation
16
Hardware LCD Drivers
Some processors,
such as the R8C/Lx
family, contain
integrated LCD
drivers
Greatly simplifies
management of
large LCDs with
many segment and
backplane lines
17
The Software
18
Remapping the LCD
Logical remap of display segment to an array of com and
segment pins
Map display segments to array for:
Ease of reuse and portability
Maintainability in the face of hardware changes
Self documenting and readable code
Can further map characters to sets of lines in 7 or 14
segments to display
Examples in HEW
19
Segmented Displays
20
Segmental Building Blocks
Multiple
segments can be
formed to create
dynamic icons
Characters that
make an
information area
21
Segments that
make a
character
Designing Software for LCD
Screens
State machine
Control state of system
Controls what is on LCD
Controls what key/button presses do
Easy to update and maintain
Straight forward and easy to read
22
Screen Table
Everything is defined here
Each screen controls and corresponds the state of the
system
Each table entry has
Section for fixed icons
Section for pointers for data to be displayed in data area
Section for formatting
Section for blinking icons
Other sections for state depended items
Examples in HEW
23
Controlling Keyboard / Buttons
Can be one of several methods
1 large switch statement, each case being a screen with a
switch statement for all the buttons
Function table where rows are screen and columns are buttons
Button case control what button press does (or does not do)
in that screen
Examples in HEW
24
Questions?
25
Thank You!
26