id 421c:designing with segmented lcd displays travis weisberger embedded systems engineer version:...

27
ID 421C: Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

Upload: britney-fowler

Post on 22-Dec-2015

217 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

ID 421C: Designing with Segmented LCD Displays

Travis Weisberger

Embedded Systems Engineer

Version: 1.3

BNS Solutions

13 October 2010

Page 2: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

2

BNS Solutions

A little something about BNS… Engineering consulting firm Located in Walpole, Massachusetts Renesas Platinum Alliance partner Work in numerous industries including

“Engineering and Technical Marketing Solutions as simple as possible, But Not Simpler™”

Page 3: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

3

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 University of Michigan BSE in CE Boston University MS CSE With BNS Solutions since 2007 First implemented LCD control in

home heating solutions

Page 4: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

Innovation

4

Page 5: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

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

Page 6: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

66

The Hardware

Page 7: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

7

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

Page 8: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

8

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

Page 9: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

9

Driving an LCD segment

Without a LCD driver 2 digital I/Os Waveform

Page 10: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

10

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

Page 11: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

11

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

Page 12: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

12

Designs for 2 Backplanes

Without a LCD driver

Several methods using:4 digital I/Os2 digital I/Os

Backplane waveform

Page 13: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

13

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.

Page 14: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

14

2 I/Os

By using 2 I/O pins for the commons, the configuration is easy to implement but requires the tri-state to be used

5V – output high 2.5V – tri-state/

float 0V – output low

Page 15: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

15

Backplane Code

Show code in HEW

Page 16: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

16

DC Drift

One problem with LCDs is with DC driftOccurs when a constant non-zero voltage potential

is held on a single segmentCauses 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

Page 17: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

17

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

Page 18: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

1818

The Software

Page 19: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

19

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

Page 20: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

20

Segmented Displays

Page 21: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

21

Segmental Building Blocks

Segments that make a character

Characters that make an information area

Multiple segments can be formed to create dynamic icons

Page 22: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

22

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

Page 23: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

23

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

Page 24: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

24

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

Page 25: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

Questions?

25

Page 26: ID 421C:Designing with Segmented LCD Displays Travis Weisberger Embedded Systems Engineer Version: 1.3 BNS Solutions 13 October 2010

26

Thank You!