Reverse engineering a 12 pin display

For Adafruit customers who seek help with microcontrollers

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
braghettos
 
Posts: 1
Joined: Thu Jun 28, 2012 9:41 am

Reverse engineering a 12 pin display

Post by braghettos »

Hi everyone! I'm currently developing a project for my university that allows me to control an eletrical moka remotely.
For a case study I took an Alicia De Longhi Plus (http://www.lucaelettronica.it/catalogo/ ... EMKE21.jpg) that has 5 buttons and a lcd display.
The display has no name or code or something that allows me to understand the model and find out a datasheet or at least how the pins have to be driven.
It's a 4 digit display with 12 pins in a row (not 6 on a side and 6 on the opposite side).
To be more specific there is a colon between the first 2 digits and the other 2 digits, in this way -> 12:11. There are no decimal points.

Can someone help me to understand how pins are driven? I found nothing on internet!

Thank you so much in advance,

Diego

User avatar
adafruit_support_mike
 
Posts: 67446
Joined: Thu Feb 11, 2010 2:51 pm

Re: Reverse engineering a 12 pin display

Post by adafruit_support_mike »

To reverse-engineer an LCD you need something like a logic analyzer. The signals that control them don't make much sense until you combine them the right way.

Without getting too far into details, LCDs need to be driven with AC signals. Applying DC voltage to an LCD segment will eventually cause the liquid crystal to plate onto the glass. Either you want them neutral, or you want to balance every positive signal with a negative one of the same strength. In theory that isn't too hard, but the most obvious way to handle the wiring uses a separate input line for every segment of every character. Your 4-character display would need at least 30 pins.

To save pins, displays are arranged so the segments are multiplexed. Each pin at the edge of your display probably connects to at least three segments of some number. Explaining it in any more detail requires diagrams, and rather than draw them myself I'll point you to this datasheet from Atmel which describes driving simple LCDs directly from a microcontroller: http://www.atmel.com/Images/doc2530.pdf

User avatar
cstratton
 
Posts: 294
Joined: Wed Sep 29, 2010 3:52 pm

Re: Reverse engineering a 12 pin display

Post by cstratton »

When I reverse engineered an LCD, I just used a scope.

Most of the time I only used one channel, as I was able to differentiate the column lines from the segment lines by a difference in their waveforms - the columns have a neutral time, during which the other columns get to drive (it wasn't perfectly neutral though, there was some parasitic effect from the others). To confirm I understood what was going on, I may have briefly used a second probe to look at the phase / anti-phase relationship between the column and segment lines used to activate or not active a segment.

Once I knew which lines where columns and which were segments, I hooked them up to a microcontroller with a serial interface which I used to manually command the activation of one logical segment at a time, while visually observing the effect on the display and recording the effected segment. As it was a numeric display there was no ambiguity in judging which segment was on, and if I recall I soon recognized a pattern to their assignment.

Locked
Please be positive and constructive with your questions and comments.

Return to “Microcontrollers”