New LCD Development board

Go To Last Post
18 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I have a source for a small (1.5") very inexpensive 96X64 LCD module. It requires a PCB to mount because of the zebra type connector. I'm considering making a development board like the DB101. My question is which AVR should I use on the board - if any?

I'm thinking one of the 44 pin or 64 pin MEGAs.

What do you think?

official AVR Consultant
www.veruslogic.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

IIRC there is a source (in Germany?) for small LCDs like that already mounted to an AVR blard.

I think I have the link at work--I'll check tomorrow.

As I recall the setup was a good value vs. rolling-your-own.

Lee

You can put lipstick on a pig, but it is still a pig.

I've never met a pig I didn't like, as long as you have some salt and pepper.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

This is the module from Electronic Goldmine. I was going to have a board made to mount it, and was hoping to sell a few to help recoup the cost for the board.

I was hoping to get a feel for any interest in this project. But, if there is something out there that's similar and at a great cost, it's probably not worth the effort.

Mike.

official AVR Consultant
www.veruslogic.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

What's the controller on that module?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

It took me quite some time to find this out. I never found an exact match, but I found a very similar one from Solomon Systech. Using a high power microscope I had to match it physically and determine the pinout. Though much trial and error found an initialization that works.

Here is my first image.

official AVR Consultant
www.veruslogic.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

You are moving forward quickly. With help on the Electronics forum the site selling a similar setup was found:
http://www.shop-en.display3000.c...

Lee

You can put lipstick on a pig, but it is still a pig.

I've never met a pig I didn't like, as long as you have some salt and pepper.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

gr82bdad wrote:
It took me quite some time to find this out. I never found an exact match, but I found a very similar one from Solomon Systech. Using a high power microscope I had to match it physically and determine the pinout. Though much trial and error found an initialization that works.

Here is my first image.

Please post any info you have on the display.
Thanks!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:
Please post any info you have on the display.
Thanks!

http://www.goldmine-elec-products.com/prodinfo.asp?number=G15623
This is what I started with.

Lee - Thanks for the link. The 1.5" color module with MEGA128 is similar to what I was thinking, but this display is monochrome. So, the price would be much less.

The controller is 2.7V and SPI interface. I have made several PCBs (using copier method) to get the prototype working and to determine the mechanical. Because this is a snap on the board module, the relationship of the pads to the mounting holes and the metal clips is critical. I now have a PCB designed to send out to get NC routed and drilled to verify the mechanical interface. But, if my dimensions are off, I may have to do a second pass. Many of the low cost board houses do not do internal routes, but I found a way around that.

The board is the key to making this display usable.

official AVR Consultant
www.veruslogic.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

theusch wrote:
You are moving forward quickly.

Lee - I started this a while back and made a new year resolution to move forward on a project in 2009 as recommended in the January 2009 "Nuts & Volts"

official AVR Consultant
www.veruslogic.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Looks like any regular Nokia 3310 display to me. They are also 96*48.

/Jesper
http://www.yampp.com
The quick black AVR jumped over the lazy PIC.
What boots up, must come down.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Any programming info on the LCD that you have discovered?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

The 3310 controller is Philips PCD8544. This one is from Solomon. I used two different Solomon data sheets to make it work. The chip acts like the SSD1850, but physically looks closer to a different chip.

Once initialized, it acts much like the 3310. I did have to rearrange the 3310 font table.

Unlike the 3310, this one has 19 pin zebra connection. Besides the same 5 control signals, and power and ground, there are 12 VLCD connections for charge pump caps.

This is where the high power microscope came in. Not all pins on the chip came out to the connector. There were 5 different DC-DC converter configurations and 3 different bias configurations in the data sheet that had to be tried.

official AVR Consultant
www.veruslogic.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

The other advantage to this display over the 3310 is that it has a very nice bezel that clips to a PCB. The problem is that there is NO WAY to solder any leads to this module. It must be snapped on to a PCB.


Here is the reverse side showing the zebra strip connector.

There appears to be spots for some LEDs to edge light it too.

official AVR Consultant
www.veruslogic.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I compared my driver to the ones for the 3310 and sending to the Graphic data RAM is EXACTLY the same.

Moving the cursor around is a bit different.

void LCD_Set_Cursor (unsigned char row, unsigned char col)
{
        if( (row < 8) && (col < 96) )
        {
                // Set page address
                LCD_Control(  PAGE_ADDRESS  | row );
                // column address low nibble
                LCD_Control(COLUMN_ADDR_LOW | (col & 0x0F));
                // column address high nibble
                LCD_Control(COLUMN_ADDR_HI  | (col >> 4));
        }
}

vs 3310

// Set the base address of the lcd
void lcd_base_addr(unsigned int addr) {
    lcd_send(0x80 |(addr % LCD_X_RES), LCD_CMD);
    lcd_send(0x40 |(addr / LCD_X_RES), LCD_CMD);
}

I stand corrected however, I'm using the exact 3310 font table.

If you look at the SSD1850 data sheet you have to ignore the gray scale stuff. This is where the module separated from the data sheet.

If you already have 3310 code working, changing to this display should mean changing the LCD_init() function and the locate cursor function. Any other writes to the control register need to be evaluated since it's completely different.

I used the BMP to Hex.exe program to convert the graphic screens from paint to a C array.

official AVR Consultant
www.veruslogic.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Actually, the SSD1820 more closely matches the module. I missed that one in my original search.
http://www.digchip.com/datasheets/download_datasheet.php?id=921475&part-number=SSD1820A

official AVR Consultant
www.veruslogic.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Nice detective work there. Also looks like a good job on the PC fab. I've never had good luck getting traces that close using the heat transfer method even using the good press-n-peel blue media.
I did discover a better etchant though, a dilution of HCL with H2O2 (pool muratic acid and hydrogen peroxide). I don't remember the concentration off hand, I think it was 2 to 1 H202 to HCL. Great etchant, twice as fast as the brown crud.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Did you ever create the development board that started this thread?

Jeff Dombach, JLD Systems
"We do the stuff behind the buttons!"
Your source for embedded solutions with a 100% Guarantee.
http://www.jldsystems.com
Phone 717.892.1100