Forums

Decode LCD drive?

Started by N_Cook February 21, 2019
The initial step before feeding to conversion to BCD or whatever. So 
decoding 2 of 4 backplanes (not interested in all the digits+legends) 
<>0.3V voltage steps and relative timings and of course the ORing function.
Identity of the backplanes and segment lines is known.


On 2019-02-21, N_Cook <diverse@tcp.co.uk> wrote:

Subject: Re: Decode LCD drive?

> The initial step before feeding to conversion to BCD or whatever. So > decoding 2 of 4 backplanes (not interested in all the digits+legends) ><>0.3V voltage steps and relative timings and of course the ORing function. > Identity of the backplanes and segment lines is known.
I'm assuming you mean bare glass LCD amplifiy the signals to logic level (eg using comparators, or transistors) and use backplane signal slightly delayed to drive an edge-triggered latch. (which latches the segment signals) or trigger an interrupt etc.. -- When I tried casting out nines I made a hash of it.
On Friday, February 22, 2019 at 12:01:08 AM UTC-5, Jasen Betts wrote:
> On 2019-02-21, N_Cook <diverse@tcp.co.uk> wrote: > > Subject: Re: Decode LCD drive? > > > The initial step before feeding to conversion to BCD or whatever. So > > decoding 2 of 4 backplanes (not interested in all the digits+legends) > ><>0.3V voltage steps and relative timings and of course the ORing function. > > Identity of the backplanes and segment lines is known. > > I'm assuming you mean bare glass LCD > > amplifiy the signals to logic level (eg using comparators, or transistors) and use backplane signal slightly > delayed to drive an edge-triggered latch. (which latches the segment > signals) or trigger an interrupt etc..
I did this once for an LED display. I had to build level shifters for one of the two drives (anode vs. cathode) because it wasn't ground referenced and didn't swing widely. For LCD with multiple backplanes this will require reading by an ADC to detect the various levels. I should be something an MCU can do if it has enough ADC inputs since the rates on the LCD are rather slow compared to what the MCU can do. Whether or not you will need to add more multiplexer inputs depends on the number of segments on your display. Rick C.
On 22/02/2019 05:46, gnuarm.deletethisbit@gmail.com wrote:
> On Friday, February 22, 2019 at 12:01:08 AM UTC-5, Jasen Betts wrote: >> On 2019-02-21, N_Cook <diverse@tcp.co.uk> wrote: >> >> Subject: Re: Decode LCD drive? >> >>> The initial step before feeding to conversion to BCD or whatever. So >>> decoding 2 of 4 backplanes (not interested in all the digits+legends) >>> <>0.3V voltage steps and relative timings and of course the ORing function. >>> Identity of the backplanes and segment lines is known. >> >> I'm assuming you mean bare glass LCD >> >> amplifiy the signals to logic level (eg using comparators, or transistors) and use backplane signal slightly >> delayed to drive an edge-triggered latch. (which latches the segment >> signals) or trigger an interrupt etc.. > > I did this once for an LED display. I had to build level shifters for one of the two drives (anode vs. cathode) because it wasn't ground referenced and didn't swing widely. > > For LCD with multiple backplanes this will require reading by an ADC to detect the various levels. I should be something an MCU can do if it has enough ADC inputs since the rates on the LCD are rather slow compared to what the MCU can do. Whether or not you will need to add more multiplexer inputs depends on the number of segments on your display. > > Rick C. >
I'll have a go with that and the other suggestion after a more low-tech simpler attempt, because of the multiple (varying?) levels involved. Little bridge rectifiers of 4x epitaxial diodes to each relevant pair of lines, to DC and then opto-isolators if enough drive, because of the floating nature, or buffers of some sort, to get a ground-referenced set of data.
N_Cook wrote
>I'll have a go with that and the other suggestion after a more low-tech >simpler attempt, because of the multiple (varying?) levels involved. >Little bridge rectifiers of 4x epitaxial diodes to each >relevant pair of lines, to DC and then opto-isolators if enough drive, >because of the floating nature, or buffers of some sort, to get a >ground-referenced set of data.
When more complicated is allowed: http://panteltje.com/panteltje/7s_parser/index.html Proof of concept, will decode any display. Does take some programming and a fixed setup. Does not void guarantee on whatever you want to decode. Maybe use 2 LCDs in parallel, one for this methods...
On 02/22/2019 04:05 AM, 698839253X6D445TD@nospam.org wrote:
> N_Cook wrote >> I'll have a go with that and the other suggestion after a more low-tech >> simpler attempt, because of the multiple (varying?) levels involved. >> Little bridge rectifiers of 4x epitaxial diodes to each >> relevant pair of lines, to DC and then opto-isolators if enough drive, >> because of the floating nature, or buffers of some sort, to get a >> ground-referenced set of data. > > When more complicated is allowed: > http://panteltje.com/panteltje/7s_parser/index.html > > Proof of concept, will decode any display. > Does take some programming and a fixed setup. > Does not void guarantee on whatever you want to decode. > > Maybe use 2 LCDs in parallel, one for this methods... >
I like this idea a lot better as compared to the brute-force idea of decoding the drive lines directly with a bunch of latches and logic, seems very inelegant and clunky. This is a Zen-solution. Go with the stream, not against...
So far so good , tried 1X4 epitaxial bridge diode , consistent 1.6V for 
lit segment and 1V for off, good discrimination but floating levels of 
course. But 120K load the on-voltage DC drops to 1V so  opto decouplers 
are out.
For decoding purposes you can ignore the 7-segment d segment to uniquely 
define the digits 0 to 9, but can you get away with a minimum of 5 
segments decoded?




On 2019-02-23, N_Cook <diverse@tcp.co.uk> wrote:
> So far so good , tried 1X4 epitaxial bridge diode , consistent 1.6V for > lit segment and 1V for off, good discrimination but floating levels of > course. But 120K load the on-voltage DC drops to 1V so opto decouplers > are out. > For decoding purposes you can ignore the 7-segment d segment to uniquely > define the digits 0 to 9, but can you get away with a minimum of 5 > segments decoded?
a f b g e c d I think 'C' is also unneeded for decoding -- When I tried casting out nines I made a hash of it.
On 23/02/2019 20:54, Jasen Betts wrote:
> On 2019-02-23, N_Cook <diverse@tcp.co.uk> wrote: >> So far so good , tried 1X4 epitaxial bridge diode , consistent 1.6V for >> lit segment and 1V for off, good discrimination but floating levels of >> course. But 120K load the on-voltage DC drops to 1V so opto decouplers >> are out. >> For decoding purposes you can ignore the 7-segment d segment to uniquely >> define the digits 0 to 9, but can you get away with a minimum of 5 >> segments decoded? > > a > f b > g > e c > d > > I think 'C' is also unneeded for decoding >
confirmed. Next is to check a basic differential comparator works, rhwn replicate for each segment. Then hopefully no inter-digit corruption of the drive to the LCD by multiple cross-connected diodes.