How does 4x Multiplexing do its thing in this LCD Display? - Page 1
Forum section: electronics / projects

author: SuzyC
author_rank: Frequent Contributor
timestamp: July 16, 2014, 12:31:16 pm
content: Just salvaged a LCD display from a Laser Printer and I want to use it in a battery charger project.I have a breadboard with a PIC 16F886x chip that I can get to do the things I want so I already have a MCU that will work for this project.The display is monochrome, I think just a one-liner and made by Sharp and has a model number (LM1610S3) but I cannot find anything about it with all the Google in the world.This LCD module has a 9-pin connector and I can easily see where each pin connects directly to the chip on the display, so I can easily see where the clock and data and Command/Data lines, VDD, VSS and grounds and the backlight connections are connected.The one and only chip on this LCD module is a big fat NEC D7225G LCD driver IC and I was able to download the datasheet and it was there that I came across 4x time-division multiplexing to get a 16-character 14-segment type display,But I don't quite understand how this 4x time-division multiplexing works.I want to use the display in the 14-Segment node because it has a built in set of the most common 7-bit ASCII english numbers and other characters.But what is this 4x time-division multiplexing. How do I deal with it?I need help on how to initiialize the display and get it to show messages with my fast PIC chip and having to deal with a very slow 130KHz clock frequency used on the display and the 200nS instruction time of my PIC.

author: WarSim
author_rank: Frequent Contributor
timestamp: July 16, 2014, 01:42:00 pm
content: With a 9 pin connector you likely don't desk with the multiplexing modes nor the VCO frequency.The VCO and timing setup is programmed with a few resistors or equivalent.But you know what is connected to the connector and we do not.As far as the timing issues. Timing is handled with timers.Sent from my iPad using Tapatalk

author: DJohn
author_rank: Regular Contributor
timestamp: July 16, 2014, 04:42:50 pm
content: The driver takes care of talking to the display, including all of the multiplexing. You don't need to worry about generating any of those signals (unless the display module is set up to take an external clock, which is unlikely).All you have to do is give it power and talk to it through the serial interface (SI, /SCK, C/D, and /CS). Details of that start on page 23. To send commands, keep C/D high as you send the byte. For data, keep it low. You'll need to reset it, maybe wait a bit, then send MODE SET and DISPLAY ON at least.You don't get to choose the number of segments. That's determined by the display. If you hold it at the right angle to the light, you might be able to see the segments.For the MODE SET command, you will need to know the configuration of the display itself: how many digits, how many segments per digit, and how it is multiplexed. Or you could guess. There are only has 5 bits. You could try all combinations and see which one works.For setting segments directly, send LOAD DATA POINTER followed by WRITE DATA MEMORY (the data is included in the command here, so you don't need to send a byte with C/D low). The data pointer is automatically incremented, so you can write to multiple consecutive locations without sending LOAD DATA POINTER again.To use the decoder, my guess would be to send WITH SEGMENT DECODER to put it in decoding mode, LOAD DATA POINTER to say which digit you want, then send the data. The top bit of the data says which decoder to use.The datasheet isn't terribly clear (they never are for these things). You'll definitely need a bit of trial and error before you get it right.