Electronics > Projects, Designs, and Technical Stuff
LCD design, is this good enough?
robertbaruch:
Thought I'd post a description and pic of the test jig I'm going to use for testing the LCD samples. First, I'm just going to set up a simple square wave and test one segment, see what the threshold is, that sort of thing. Then I'm going to use this jig, which has 144 pogo pins on it. The pogo pins are 0.65mm in diameter, and the tips are rounded. I did check to see if the tips would scratch the LCD pads on my dead LCD, and they didn't seem to do any damage! Finally, I'll test one of the LCDs in a real TRS-80 PC-1.
Why pogo pins and not an elastomeric strip? Well, I don't have any extra elastomeric strips, and I don't find them easy to use. They're a bit fiddly.
So I 3D printed this holder for the pogo pins, and I have two circuit boards. One is a more general driver, and the other is the adapter for the specific LCD.
The general driver uses a single PCF8545B LCD driver from NXP. This driver is "universal", being capable of up to 8 commons and up to 40 rows (i.e. 320 segments), with driving voltages from 1.8 to 5.5v, biasing of 1/2, 1/3, or 1/4, multiplexing of 1:4, 1:6, or 1:8, and a range of scan frequencies from 60-300Hz, AND two types of output waveforms.
Sounds awesome, right? Well, sadly, unlike a lot of their other chips, this one is not cascadable, meaning you can't add rows. If you wanted to add rows, you'd have to make sure the chips are synced in their commons, and that's what cascadable chips can do. Not this one, so you can't just use four of them, their commons wouldn't sync. Sadly, NXP does not make a chip with 8 commons that is cascadable. If you happen to know of one, let me know!
So instead, I'm resigned to testing only one portion of the LCD at a time. My LCD has 4 "sections": 3 sections of 40 rows for the character display, and 1 section of 9 rows for the indicators. I connect a FSAL200 quad analog multiplexer to each row, and I set up the test jig to have 4 sections of 40 rows. That's 160 rows, but 40 quad multiplexers. The multiplexers switch either the signal from the LCD driver, or 1/2 the LCD voltage, which is the "off" state of a segment. In this way, I can switch the LCD driver to drive any one of the 4 sections of 40 rows.
The whole thing is controlled with, of course, an Arduino (Pro Mini, 5V). There are four buttons, a bunch of LEDs, and a 4-digit 7-segment display. With that, I can program the LCD driver to the right bias, LCD voltage, multiplexing, waveform, and frequency, and then step through the sections to test. I decided to use a DAC instead of a low-pass filter on the Arduino's PWM output because I wanted a more stable voltage.
Anyway, the factory says they'll have the samples ready by the end of the month, and theoretically it will take 1-2 weeks after that to get here.
In other news, I attempted to set up a CrowdSupply crowd-sourcing campaign. You have to fill out a form with all the details of your project, how much you want to crowdfund, what you're going to spend it on, and so on. I think it's a higher bar than Kickstarter or IndieGoGo. Reasonable fees, too, and they handle fulfilment. However, that was two weeks ago, and they claim to get back to you in a week. So... I don't know how that's going to turn out. I do want to set up a crowdfunder for this.
robertbaruch:
I have the sample LCDs! Running my fingers along the contacts (grounding one of the commons) shows all the segments seem good and in the right place. The size is also correct.
There's just one problem. The PCF8545 LCD driver doesn't seem to be behaving as expected. I can program it via SPI, no problem. The common pins ("BP", or "backplane" in the datasheet) have the correct waveform. However, the segment pins don't behave! They are supposed to vary between 0v, 1/2 VLCD, and VLCD. In fact, at VLCD = 2.5, they vary between 0v, 3.3v, and 2.5v. Yes, every time the segments are supposed to be at 1/2 VLCD, they go to 3.3v!
This is a problem because there are protective diodes going from the segment outputs to VLCD, so they conduct! And yes, the chip gets hot!
I changed VLCD to 4.0v, but now the chip outputs 4.6v when it should be at 1/2 VLCD. So we have a situation where segments at 1/2 VLCD result in an output of 0.6-0.8 volts above VLCD. It's suspicious.
I'd ask NXP what's going on, but historically they have never answered a question about any of their PCF85xx chips.
There was a suggestion on Twitter that maybe NXP reversed the pins on VLCD and VCC.
robertbaruch:
Without a functioning LCD tester, I just decided to go for broke and install a new LCD into a known working Sharp PC-1211 (aka TRS-80 PC-1). It works! At least, all the segments are active. However, I need to adjust the contrast. If that doesn't work, then I'm pretty sure that the threshold voltage is incorrect. I can see that when I press the mode switch, the mode segments do change slightly.
robertbaruch:
And it turns out that for the PCF8545 driver, VLCD must be greater than VCC, which cannot be done here. :palm: So back to the drawing board for an LCD tester.
robertbaruch:
I damaged the wiper on the contrast pot because it was all painted down. So with the wiper removed (pot at max resistance) I just decided to see what the display looked like.
So close! Those last few matrices have something odd going on with them. I'm tempted to call it flaw in the LCD manufacture, but I really need to replace a second one to see if the effect is replicated.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version