Searching \ for '[PIC] Some questions regarding LCD display' in subject line. ()
Make payments with PayPal - it's fast, free and secure! Help us get a faster server
FAQ page: www.piclist.com/techref/io/lcd/pic.htm?key=lcd
Search entire site for: 'Some questions regarding LCD display'.

Exact match. Not showing close matches.
PICList Thread
'[PIC] Some questions regarding LCD display'
2008\11\06@001204 by gardenyu

picon face
part 1 1083 bytes content-type:text/plain; charset="gb2312" (decoded quoted-printable)


Hi
I'm building a 3 digit LCD display trying to use a Microchip's AY0438 controller. I read the C18 compiler library and found there are some pretty good library functions for Hitachi HD44780 LCD controller. This is weird to me. Why do they write library functions for a driver which is not even their own product? I also noticed there are a lot samples everywhere for driving the Hitachi chip, and very few on AY0438 driver. It turns out for a starter, it is much easier to use a much more expensive chip (80 pin for Hitachi) to realize a very simple function.
I bet the difference is that the Hitachi chip supports many more characters, and people think it's "too easy" to drive AY0438, thus they don't bother.
I'm very interested in getting a sample code written using C18 compiler about driving just a few digits LCD using any control chip, if someone may share it. Thanks a lot.
_________________________________________________________________
新版手机MSN,新功能,新体验!满足您的多彩需求!
http://mobile.msn.com.cn

part 2 35 bytes content-type:text/plain; charset="us-ascii"
(decoded 7bit)

2008\11\06@002048 by Xiaofan Chen

face picon face
2008/11/6 gardenyu <spam_OUTgardenyu2004TakeThisOuTspamhotmail.com>:
> I'm building a 3 digit LCD display trying to use a
> Microchip's AY0438 controller.

What is the reason you want to use such an old
controller? I do not know about it. The datasheet
is dated 1995. Does Microchip still actively
promote this device?

Xiaofan

2008\11\06@003131 by gardenyu

picon face
part 1 860 bytes content-type:text/plain; charset="gb2312" (decoded quoted-printable)


oh, I didn't realize it was a so old chip. I talked to a salesman representing Microchip and that's the recommendation. I assumed they have some good support on this but wrong.
But still it's avaliable in Digikey though.   Will you recommend any chip with good design support somewhere?
> Date: Thu, 6 Nov 2008 13:20:46 +0800> From: .....xiaofancKILLspamspam@spam@gmail.com> To: piclistspamKILLspammit.edu> Subject: Re: [PIC] Some questions regarding LCD display> > 2008/11/6 gardenyu <.....gardenyu2004KILLspamspam.....hotmail.com>:> > I'm building a 3 digit LCD display trying to use a> > Microchip's AY0438 controller.> > What is the reason you want to use such an old> controller? I do not know about it. The datasheet> is dated 1995. Does Microchip still actively> promote this device?> > Xiaofan>

2008\11\06@005620 by Bob Blick

face
flavicon
face
gardenyu wrote:

> I'm building a 3 digit LCD display trying to use a Microchip's AY0438
> controller. I read the C18 compiler library and found there are some
> pretty good library functions for Hitachi HD44780 LCD controller.
> This is weird to me. Why do they write library functions for a driver
> which is not even their own product? I also noticed there are a lot
> samples everywhere for driving the Hitachi chip, and very few on
> AY0438 driver. It turns out for a starter, it is much easier to use a
> much more expensive chip (80 pin for Hitachi) to realize a very
> simple function.

Forgive me if this is stuff you already know but since you are comparing
the two it sounds like you haven't driven LCDs directly before.

The AY0438 is meant to drive LCDs with a single common(or maybe two or
three but roll your own common drivers). You can't drive a lot of
segments with those but the contrast is great and you can use them over
a wide temperature and voltage range.

The HD44780 is typically used heavily multiplexed with displays having
lots of commons so you can drive many segments. I have never used the
chip by itself, I've always bought a display that already incorporates
one on it. They are the most popular LCD driver chip and very very old.
But not obsolete.

If you decide you want to use an LCD with one to four commons I would
suggest looking at a microcontroller that already has an LCD drive
peripheral inside. Microchip makes some, although I've never used them.

The easiest way to get familiar with direct LCD drive might be the AVR
Butterfly board, Digikey has them for $20.

TI's MSP430F4xx series microcontrollers also have LCD drivers inside and
they are awesome chips.

Cheerful regards,

Bob

2008\11\06@014312 by cdb

flavicon
face


:: I'm building a 3 digit LCD display trying to use a Microchip's
:: AY0438
:::: controller.

Even though you have yet to acknowledge the code I sent twice directly to you, here is some outline code that directly 'talks' to glass LCD's without the need for a controller. I haven't looked up the uChip part, but doesn't its' datasheet have any code examples in it?

The com pin goes to the centre of two resistors in series. The ends of the resistors connecting one each to Vcc and Ground. IOW a voltage divider.

I couldn't be bothered with comments in this version!

C code for 2 common glass LCD 3.5 digits

/************************************************************************
**  Program for 3.5, 4.5 digit controllerless LCD's                    **
**                                                                     **
** v0.1b                                                               **
**copyright C.D. Barnard  7 February 2004                              **
**                                                                     **
************************************************************************/

/* PortB = LSD
** PortC = Dig
** PortD = MSD
** PortE = DP,LoBat, +
** PortA = COM
**
** Each set of segments are on the bottom 6 bits of the port, this leaves
** portC bit 7 (Rx) free.
**
**/
#define COM bRA0
#include <pic.h>
//#include <deftype.h>
#include <delays.h>
void display();
void format(unsigned int n);
void setup();
/*uint*/
// WORD power_10(WORD digit);
void Interrupt();
BYTE phase=0;
struct flags
{
 bit dummy;
 bit dummy;
 bit dummy;
 bit dummy;
 bit dummy;
 bit dummy;
 bit dummy;
 bit tmr0F;
} flag;

BYTE x,temp;
WORD z,no;
const char segments[12]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x67,0x6E,0x79}; This depends on glass column layout.
//                            0     1    2    3     4     5     6     7    8     9    Y     E
BYTE digits[4];

void main()       // Function to
{
//unsigned int no;
 setup();

digits[3]=0;
no=0;

 format(no);
while(1)
{   display();
   Wait(100);
   format(no);
    }
 
/*  digits[2]=segments[10];
 digits[1]=segments[11];
 digits[0]=segments[5];
*/    
 
}



void setup()      
{
 TMR0=0;
 ADCON1=0x07;
 PORTA=0x01;
 PORTB=0;
 PORTC=0;
 PORTD=0;
 PORTE=0;
 TRISB=0;
 TRISA=0;
 TRISC=0;
 TRISD=0;
 TRISE=0;
 OPTION_REG=(1<<PS2)|(1<<PS1)|(1<<PS0);
 INTCON=(1<<GIE)|(1<<T0IE);                        
}

void Interrupt()
{
  if (bT0IF)
   {
     bT0IF=0;
     phase++;
     flag.tmr0F=1;
   }
}


void display()      
{
if (flag.tmr0F)
 {
   if (phase &1)
    {
      PORTE=digits[3];
      PORTD=digits[2];
      PORTC=digits[1];
      PORTB=digits[0];
      COM=0;
      no++;
    }
   else
    {
      PORTE=~digits[3] ;
      PORTD=~digits[2];
      PORTC=~digits[1];
      PORTB=~digits[0];
      COM=1;
    }
   flag.tmr0F=0;
   
 }
}



void format(WORD n)
{
WORD x;

x=0;
while (n >= 1000)
{
  x++;
  n-=1000;
 
 }
   digits[3]=segments[x];
   x=0;

  while(n >=100)
  {   x++;
       n -= 100;
       
  }
digits[2]=segments[x];
x=0;
   while (n >= 10)
   {
 
   n-=10;
    x++;
   
   }
 digits[1]=segments[x];
digits[0]=segments[n];


}
--
cdb, EraseMEcolinspam_OUTspamTakeThisOuTbtech-online.co.uk on 6/11/2008

Web presence: http://www.btech-online.co.uk  

Hosted by:  http://www.1and1.co.uk/?k_id=7988359






2008\11\06@014928 by Xiaofan Chen

face picon face
2008/11/6 gardenyu <gardenyu2004spamspam_OUThotmail.com>:
> Will you recommend any chip with good design
> support somewhere?

They recommend AY0438 because that is the
only one Microchip has.

Could you use PIC16F91x LCD PICs? There
are other PICs with integrated LCD controller
as well.

Xiaofan

2008\11\06@055220 by Grant Brown

flavicon
face
Hi Colin,

Ya maken me feel guilty mate.

Thanks for the code regarding the lCD

Bit of tweaking and its now up and running.

Again thank you,

Kind Regards
Grant Brown

cdb wrote:
{Quote hidden}

--
Kind Regards
Grant Brown

SiteDoc Pty Ltd
mob: 0412 926 995
http://www.sitedoc.com.au
__________________________________________________________________________________________________________
This email message together with any attachments is intended only for the addressee(s) and contains information that may be confidential and/or copyright.  If you are not the intended recipient, please notify the sender by reply email (or telephone SiteDoc Pty Ltd on +61 2 42291185) and immediately delete this email together with any attachments from your computer. If you are the intended recipient, you must not copy, disclose, reproduce or distribute this communication together with any attachments without the authority of SiteDoc Proprietary Limited. No representation is made that this email or any attachments are free of viruses. Virus scanning is recommended and is the responsibility of the recipient. Unless specifically stated by the sender as the views of SiteDoc Proprietary Limited, any views expressed in this message are those of the individual sender, and no responsibility will be borne by SiteDoc Proprietary Limited for its content or outcomes.



2008\11\06@063941 by cdb

flavicon
face


:: Ya maken me feel guilty mate

Oops sorry, that comment  was to GARDENYU

Colin
--
cdb, KILLspamcolinKILLspamspambtech-online.co.uk on 6/11/2008

Web presence: http://www.btech-online.co.uk  

Hosted by:  http://www.1and1.co.uk/?k_id=7988359






2008\11\06@120841 by M. Adam Davis

face picon face
part 1 1995 bytes content-type:text/plain; charset=GB2312 (decoded quoted-printable)

I have two articles on driving static LCDs you might find useful:

The first drives a 3 digit display directly with a PIC:
http://www.ubasics.com/driving_static_lcds
Very low power, very low cost.  Includes source code near the end.
Goes through what a static and multiplexed display is and the driving
methods for a static display.  You should only need a static display
for 3-4 digits.

The second article is Jinx's solutions:
www.ubasics.com/Jinxs_static_LCD_drive_solution
Only schematics.  One uses an LCD driver IC (another common part
ICM7211, but not the AY part you mention).  The other drives the LCD
with a few 74 series logic devices run from the PIC.  You might email
Jinx directly (he's on this list) to see if he can contribute code for
either of these solutions.

Good luck!

-Adam

2008/11/6 gardenyu <RemoveMEgardenyu2004TakeThisOuTspamhotmail.com>:
>
> Hi
>
> I'm building a 3 digit LCD display trying to use a Microchip's AY0438 controller. I read the C18 compiler library and found there are some pretty good library functions for Hitachi HD44780 LCD controller. This is weird to me. Why do they write library functions for a driver which is not even their own product? I also noticed there are a lot samples everywhere for driving the Hitachi chip, and very few on AY0438 driver. It turns out for a starter, it is much easier to use a much more expensive chip (80 pin for Hitachi) to realize a very simple function.
>
> I bet the difference is that the Hitachi chip supports many more characters, and people think it's "too easy" to drive AY0438, thus they don't bother.
> I'm very interested in getting a sample code written using C18 compiler about driving just a few digits LCD using any control chip, if someone may share it. Thanks a lot.
> _________________________________________________________________
> 新版手机MSN,新功能,新体验!满足您的多彩需求!
> http://mobile.msn.com.cn
> -

2008\11\06@141211 by John Day

flavicon
face
You are dealing with two different animals. The AY0438 is for
conventional multi-segment LCDs such as simple 7 segment types. In a
hobbyist situation it is far less likely to be encountered.

The HD44780 on the other hand is used in just about every text type
dot-matrix LCD display around! Well, most of them anyway. Thus the
HD44780 (and it's compatible types) is a very common interfacing need
hence the number of libraries you have found for it. The same holds
true for just about any micro you care to name - you will find
HD44780 code in many guises.

John

2008\11\06@161111 by Jinx

face picon face
> Does Microchip still actively promote this device?

http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en010755

I've found the ICM7211 a fair bit cheaper, from my supplier anyway (Arrow)

2008\11\06@225520 by gardenyu

picon face
part 1 3310 bytes content-type:text/plain; charset="gb2312" (decoded quoted-printable)


Hi:
   Sorry for posting similar stupid questions on LCD display.
   I also found Adam's 3 digit direct display program online before. It was pretty good.
   My application will require a LCD about 2 by 1 inch. The Lumex and Varitronix 3 digits' LCDs are a little too small. Thus I prefer to go with a 3.5 or 4 digit LCD and block some areas by graphic overlays.
   I noticed Jinx used a 4 digit LCD. This LCD has two commons and Jinx tied them together and it works. However, Adam said for 2 to 4 commons, usually multiplexing is required (if I understand it right)  http://www.ubasics.com/driving_static_lcds
   I am a little confused. Can I use a similar program Adam wrote to run 3 digits on a 4 digit LCD?     Another question is: Since these LCD does not have backlight. I did some research and thought that I can use a transflective LCD with some little surface mount LEDs at the back of the LCD as backlight. These LEDs should have a very wide viewing angle, very small lumen. Correct me if I'm wrong.
      > Date: Thu, 6 Nov 2008 12:08:35 -0500> From: spamBeGonestienmanspamBeGonespamgmail.com> To: TakeThisOuTpiclistEraseMEspamspam_OUTmit.edu> Subject: Re: [PIC] Some questions regarding LCD display> > I have two articles on driving static LCDs you might find useful:> > The first drives a 3 digit display directly with a PIC:> http://www.ubasics.com/driving_static_lcds> Very low power, very low cost. Includes source code near the end.> Goes through what a static and multiplexed display is and the driving> methods for a static display. You should only need a static display> for 3-4 digits.> > The second article is Jinx's solutions:> http://www.ubasics.com/Jinxs_static_LCD_drive_solution> Only schematics. One uses an LCD driver IC (another common part> ICM7211, but not the AY part you mention). The other drives the LCD> with a few 74 series logic devices run from the PIC. You might email> Jinx directly (he's on this list) to see if he can contribute code for> either of these solutions.> > Good luck!> > -Adam> > 2008/11/6 gardenyu <ga
RemoveMErdenyu2004spamTakeThisOuThotmail.com>:> >> > Hi> >> > I'm building a 3 digit LCD display trying to use a Microchip's AY0438 controller. I read the C18 compiler library and found there are some pretty good library functions for Hitachi HD44780 LCD controller. This is weird to me. Why do they write library functions for a driver which is not even their own product? I also noticed there are a lot samples everywhere for driving the Hitachi chip, and very few on AY0438 driver. It turns out for a starter, it is much easier to use a much more expensive chip (80 pin for Hitachi) to realize a very simple function.> >> > I bet the difference is that the Hitachi chip supports many more characters, and people think it's "too easy" to drive AY0438, thus they don't bother.> > I'm very interested in getting a sample code written using C18 compiler about driving just a few digits LCD using any control chip, if someone may share it. Thanks a lot.> > ________________________________________________________
_________> > 新版手机MSN,新功能,新体验!满足您的多彩需求!> > http://mobile.msn.com.cn> > -

2008\11\06@231116 by M. Adam Davis

face picon face
2008/11/6 gardenyu <gardenyu2004EraseMEspam.....hotmail.com>:
> http://www.ubasics.com/driving_static_lcds
>
>   I am a little confused. Can I use a similar program Adam wrote to run 3 digits on a 4 digit LCD?

When we talk about multiplexed displays we mean displays with more
than one common per segment.

The 4 digit displays with 40 pins sold by lumex and varitronix are
static LCDs (not multiplexed), so you can use them the same way as the
3 digit in my article.

Tie unused segments to COM.

>   Another question is: Since these LCD does not have backlight. I did some research and thought that I can use a transflective LCD with some little surface mount LEDs at the back of the LCD as backlight. These LEDs should have a very wide viewing angle, very small lumen. Correct me if I'm wrong.

You can put LEDs directly behind the display, but without a diffuser
you'll get uneven lighting.  Jinx did some experiments with
backlighting which you can read about (and see picutres of) here:

http://home.clear.net.nz/pages/joecolquitt/led+lcd.html

-Adam

--
Please rate and vote for my contest entry:
mypic32.com/web/guest/profiles?profileID=50331

2008\11\06@235047 by Jinx

face picon face
part 1 758 bytes content-type:text/plain; charset=GB2312 (decoded 7bit)

> Since these LCD does not have backlight. I did some research and
> thought that I can use a transflective LCD with some little surface
> mount LEDs at the back of the LCD as backlight. These LEDs should
> have a very wide viewing angle, very small lumen

If you don't have much space behind the LCD then that would be one
solution. I've found that one or two LEDs and a guide/reflector works too

If you have room to do so, a good way would be have the back of the
LCD open and shine LEDs at it from a distance, which will help spread
the light. LEDs are too strong as point sources close up . The driver chip
and anything else that would make a shadow would be mounted outside
the perimeter of the display



part 2 35 bytes content-type:text/plain; charset="us-ascii"
(decoded 7bit)

More... (looser matching)
- Last day of these posts
- In 2008 , 2009 only
- Today
- New search...