Main Site Documentation

Large LCD


#1

Take a look at this image

Whilst I was waiting for my Panda and Large LCD…

Thanks guy’s!!! I just assumed this was the way up!

Doesn’t fit my apeture now… It’s upside down


#2

You mean like in this video ? http://www.youtube.com/watch?v=uW3Lkw8TDE0
Yeah, that surprised me too

It can be reversed by writing a custom driver but maybe there is a command you could send to reverse it ?


#3

I’ve sorted it out now, but I had to put my name in an a banner to mask the mistake… It’ll do until I buy another.

Its looking pretty good… Those PS3 joysticks are only £6 each

Cheers Ian


#4

Great looking device !


#5

Very nice. Where did you get that enclosure?


#6

Our version of Radio Shack
http://uk.rs-online.com/web/search/searchBrowseAction.html?method=getProduct&R=3438098

There are several sizes ( I had to shave down the large Lcd so it would fit)

Cheers Ian


#7

It is Freaking Easy to flip the display on this unit. Just add the VFlip method to the driver as shown below. You also need to modify the locate method slightly to offset the display in the X axis when it is flipped.

Note: This version of Locate is the faster version as posted on the forum a few weeks ago.

I’ll post all of this to Fezzer soon.

            /// <summary>
            /// Flip Display Vertiaclly
            /// </summary>
            /// <param name="flip"></param>
            private static int offset = 0;
            static public void VFlip(bool flip)
            {
                if (flip)
                {
                    SendCommand(0xA1);//'ADC SELECT , REVERSE
                    SendCommand(0xC0);//'COM OUTPUT NORMAL
                    offset = 4;
                }
                else
                {
                    SendCommand(0xA0);//'ADC SELECT , NORMAL
                    SendCommand(0xC8);//'COM OUTPUT REVERSE
                    offset = 0;
                }
            }

            private static readonly byte[] locate = new byte[3];
            public static void Locate(int x, int y)
            {
                x += offset;
                _DC.Write(false);
                locate[0] = (byte)(0xb0 | y);
                locate[1] = (byte)(0x10 | (x >> 4));
                locate[2] = (byte)(x & 0x0f);
                _spi.Write(locate);
            }

#8

Thanks Jeff… but I,ve already made the changes… And anyway I’ve modified the GPainter class to suit as I paint off screen then flush the whole screen in one.

Thanks again for the input (those mods you made are now added to the Large screen class)

Cheers Ian