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