Announcement

Collapse
No announcement yet.

Library for uLCD-32PT(SGC)

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Library for uLCD-32PT(SGC)

    Hi,

    I read whole the command sets of this lcd. I will start coding of my application based on it but first i think there should be a library for this products which includes all the definitions as well as some of functions.

    is there any such a driver that can be used with embedded code?

    best regards,
    Serkan

  • #2


    The problem is that there's a zillion different embedded devices out there.



    There's a library for Arduino, anything else and you will need to do your own.



    Wouldn't have thougt it would be that hard to do your own, then you will be able to optimise it for your own needs.
    Mark

    Comment


    • #3


      I took a look Arduino before. it is written for windows and could not find exact picosso-sgc library.

      I start my own definitions and function declerations fro freescale microcontroller. However, i think libraries will be independent from the architectures.

      Moreover, i have another question,

      I tried to communicate with uLCD-32PT with my microcontroller without success. I m sending default baud but no ACK comes. I woud like to know what happens if uLCD module dont take auto boud within 5 seconds. The lcd shows A,B,...F characters and when touch any of them it is shown below. I think this factory programmed default code. I donw know where picosso takes these commands. any rom? is not it possible to communicate with uLCD module without sending autobaud command (0x55). isnt there any default baudrate ? For example what happens if i send clear screen 0x45 with 9600 kBps?

      Secondly; documents say that RESET signal is resetiing LCD only. Does it mean picosso SGC chip is not restarting? Why i m asking this question is that when both lcd and microcontroller powered on i need to send autobaud after 500 ms and before 5 second. both debugger stops mcu and i can not catch the timings. So i would like to restart uLCD module to catch its timing.

      Best regards,
      Serkan

      Comment


      • #4


        You need to send the autobaud to enable Picaso to lock on to your microcontroller properly. Picaso initially waits for the autobaud, until it receives it will not do anthing else. Picaso needs communications to start at 9600 baud.



        When Picaso is first powered up it goes through a series of processes before it can accept serial data, it then waits for Autobaud for about 5 seconds before it displays the splash screen. Once the splash screen is displayed it waits 'forever' for the Autobaud.



        So, if you are not getting a response to the autobaud you are probably sending it too soon.



        Perhaps wait for the splash to be displayed and then try, if you don't get an ACK at this point check your connections.
        Mark

        Comment


        • #5


          I firstly implemented what is stated in datasheet.

          1. reset the lcd module by giving active low 3 ms. (i confirmed this)
          2. wait 500 ms
          3. send 0x55 (auto baud) command (transmission completed flag was set)

          could not get any data from LCD

          My second try is

          1. wait 6 second after power up for splash screen (A,B,...F with touch detect comes).
          2. send 0x55 (auto baud) command (transmission completed flag was set)

          Could not get any data from LCD.

          Third try to be sure:

          1. wait 6 second after power-up for splash screen
          2. reset the lcd to be sure (i saw the reset)
          3. wait 500 ms
          4. send 0x55 (auto baud) command (transmission completed flag was set)

          I also perform loopback test on mcu side and saw commonication completed succesfully within the mcu peripheral.

          i would like to know what is the meaning of "serail data is true and not inverted"
          this is indicated new command manual. My microcontroller datasheet says SCI uses NRZ mark/space data format. is it the same thing. you can check MC9S12XDP512 datasheet.

          Best regards,
          Serkan

          Comment


          • #6


            i m diffinetly sure 0x55 autobaud command is being sent to the LCD module since i m seeing the rs-232 TTL signal wave on RX pin of LCd module.i captured signal that on this pin.

            however i can not see ack signal on TX pin of LCD altough i m sending 0x55 continously per 5 seconds.

            Best regards,
            Serkan

            Comment


            • #7


              What happens when you use the FAT Controller software and/or terminal with the CE5/MB5 or Programming cable you purchased with the display?

              What do you mean by 'transmission completed' flag?

              Describe the 'Splash screen' you are seeing.

              The device resets during power up, there is usually no need to connect the reset line yourself.
              Mark

              Comment


              • #8


                Surely you mean 9600 Bps and not 9600 kBps?
                Mark

                Comment


                • #9


                  I think the problem was mixing the module that bougth. I tougth it as uLCD-32PT SGC however when i checked the packet i saw an indication (filled circle) for GFX. The board has no indication.

                  So this is not serial graphics controller as far as i understand. My module is uLCD-32PT(GFX). Moreover, from the web sites i think the only way to program this module is using 4DGL tool and load the firmware into the picasso ram or flash over serial port.

                  Just for confirmation; GFX series does not give ACK to the 0x55 since it does not have any serial command rigth?

                  Best regards,
                  Serkan

                  Comment


                  • #10


                    That is correct, the GFX will be mute until it is programmed with something that causes it to use the serial coms.



                    Describe the 'Splash screen' you are seeing.


                    You still haven't done that. GFX has a green splash it the top left of the screen that only displays for a few seconds. SGC has static color text in a few font sizes.



                    All you need to do is use your CE5 / MB5 programming cable that you purchased with the module to change it from GFX to SGC.
                    Mark

                    Comment


                    • #11


                      Hi,

                      What do you mean by splash screen. What i m seeing after power on is " numbers from 0 to 7 and characters from A to E. They are yellow with blue backgroung" it says 4D systems 4DGL Keypad Demo.

                      This is GFX rigth? is there any application note that explains changing GFX to SGC or vice versa. Furthermoe; we do not have CE5/MB5 and 4Dprogramming cable. They did not come with the uLCD modules. We just offered 2 of 4D programming cable. They will be here soon. I think to use it as GFX since it seems more usable since stand alone one. One concern only that i need to clarify and need to confirm my application:

                      1. I will totaly develop my application with Workshop 3 by usign 4DGL programming language.
                      2. I will compile the code (4DS) and load exacutable (4EX) into the uLCD-32PT(GFX) Flash or Ram by using Workshop 3 over serial port 0.
                      3. I will communicate with another module over serial port and drive the lcd according to the data being sent by another module.

                      This can be implemented by GFX rigth? using the same serial port for both program load and serial port communication?

                      Best regards,
                      Serkan

                      Comment


                      • #12


                        Sorry, I keep thinking GFX is shipped 'empty'.



                        The Keyboard demo is (obviously) GFX.



                        4DGL is the programming Language, GFX is the PmmC, see the 'GFX or SGC' tab for any of the products.



                        There is a user guide on how to change the PmmC on the PmmC Loader download page http://www.4dsystems.com.au/prod.php?id=46
                        Mark

                        Comment


                        • #13


                          Hi,

                          I'm developing my own control library in C++ for linux systems. Current code is really bad done. I have most of the things working, but I need to make it work the change baud rate.

                          Currently is working at 9600 but I want to use 115200. For doing so after booting the display:
                          0x55
                          0x06
                          0x51 0x0D
                          No answer...

                          Does anybody know what do I have to do to keep communication with the display? I'm changing the speed of the serial port in the computer to 115200 but it seems that there is a problem.
                          Besides that if I include a time out I'm able to change the speed and clear screen, but the rest of the commands seems to be unresponsive.

                          Any help is more than welcome.

                          Comment


                          • #14


                            How long are you waiting for the ACK to the setbaud command?

                            After you send the request the ACK comes back at the new speed after a delay of 100ms (to give you time to do whatever you need to do to change the speed at your end).
                            Mark

                            Comment


                            • #15


                              Thanks... yesterday I put 1 second and worked. I've reduced it to 150ms and it is also working.

                              Is there any other timeout I have to know about? In the spec I haven't read about this delay. Is there any delay between sending a command and getting the response?

                              TA

                              Comment

                              Working...
                              X