Announcement

Collapse
No announcement yet.

uLCD-144 and uSD problems

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

  • uLCD-144 and uSD problems

    Hi,
    I have a problem when I introduce the uSD in the uLCD:
    -Firstly, I sent the power-up and reset command
    -Later, I send the previous one and the Draw Circle command (all of them, without any uSD inserted).
    -Later on, I performed the image by using Graphics Composer and I sent 3 commands: power-up reset+Draw Circle+Display Image from Memory Card, but nothing appeared in the display so,
    - I removed Display Image from Memory Card command in my code but the uSD still inserted: again, nothing appeared in the display.
    - I removed the uSD from uLCD and the circle appeared.
    Also, I measured the supply voltage with and without uSD and it's the same.

    I don't know what's wrong!

    Thank you in advance!

  • #2


    Can you show the exact commands you are using?

    Are you always waiting for the ACK? (The init uSD command can take quite a different length of time depending upon the uSD card used)
    Mark

    Comment


    • #3


      -Yes, the commands are:

      buffer[0] = 'U';
      buffer[1]='C';
      buffer[2]=0x3F;
      buffer[3]=0x3F;
      buffer[4]=0x22;
      buffer[5]=0x001;
      SendCommand(buffer,6);

      and I have this structure for "display an image from memory card":

      { 0x40, -->1 byte
      0x49, -->1 byte
      0, -->2 bytes
      0, -->2 bytes
      0x96, -->2 bytes
      0x64, -->2 bytes
      0x10, -->1 byte
      0x00, -->1 byte
      0x00, -->1 byte
      0x00}; -->1 byte

      - I would want to know, in the previous structure, if there are some parameters that are two bytes because some of them aren't expecified.

      - I'm waiting lot of time for ASK, so I don't think that is the problem.

      -Anyway, I think the problem is when I put the uSD in the uLCD because, even when I don't send any command to read it, the only fact of being inserted in does uLCD doesn't operate.

      Thank you for your help.

      Comment


      • #4


        After you send the 'U' you should wait for the ACK and check that you get it, if you don't get it after a reasonable time you should send it again. This is a special command, you must get an ACK to it before you move on.

        Then send the C command, this is a 'normal' command in as much as the ACK should always arrive, you just need to wait for it.

        The display image command is OK, are you getting an ACK or a NAK to it?

        Have you tested all this with FAT Controller?

        Are you sending this immediately after power up? The display takes longer to init when a uSD card is inserted, what might have worked ignoreing ACKs before could cease to work once a uSD card is installed.

        Have you insered the uSD command before powering up? If not you will need to use the @i command to init the uSD card
        Mark

        Comment


        • #5


          -Yes, in my function "SendCommand", I wait each time I send something via serial port and I increase the time a lot...

          -...in fact, the uLCD shows the circle if uSD ins't inserted because the waiting time is correct, I think. So the problem seems to be inserting the uSD card although I don't use it in my program.

          -I don't have the FAT Controller.

          -Also, I'm waiting before sending the 'U' command when uSD is inserted.
          -Do you think I have to use the @i to init it although I inserted the uSD card before sending power-up reset (even before starting the circuit with the supply voltage!!)??

          Thank you!

          Comment


          • #6


            Hmm, just noticed you are talking about a uLCD-144 now. Those 'two byte' operands are only one byte on that. Still shouldn't cause the problems you are seeing though
            Mark

            Comment


            • #7


              ESPsupport wrote:
              Hmm, just noticed you are talking about a uLCD-144 now. Those 'two byte' operands are only one byte on that. Still shouldn't cause the problems you are seeing though
              Do you mean, in my structure, I have to use 1 byte in all the parameters?? Ok, I'll change them but, as you told, there is another problem...

              Comment


              • #8


                Hello again,
                I was thinking in my problem and I determined the software part of my project is correct so I'm wondering if the problem could be the uLCD-144 requires a higher voltage supply when the uSD card is inserted because it cosumes part of the input voltage.
                Also, I noticed when I inserted it, the splash screen doesn't appear, only a little white line.

                Should I increase the supply voltage when I insert the uSD card? How much?

                I've realized another point: when I send the @i command, splash screen appears: if there is no uSD card, the circle overwrites this screen while if uSD card is inserted, nothing appears (neither splash screen). I've deleted this command and it happened the same without splash screen.

                Thank you!!

                Comment


                • #9


                  1. Check that you are supplying 5v to the correct pin on the uLCD-144
                  2. With only 5v and GND connected and a uSD card inserted check that you get the splash screen after about 5 seconds.

                  If you can get through the above then the display is most likely having difficulty locking on to the Autobaud ('U') command (Whether it's the timing of the 'U' or noise on the lines remains to be seen).

                  Put a 5 second delay in your code before you send anything to the display and see how that works out. If it does you can try reducing it until you get the desired result.

                  You should have a CE5 or MB5. You can always connect that and use FAT Controller to saitsfy yourself that the display is fine
                  Mark

                  Comment


                  • #10


                    My results:

                    1. I checked the 5v supplied
                    2. In those conditions, no splash screen appears but a small white line.


                    The small white line seems to be part of splash screen so that I think this happens as a result of a low supplied voltage: maybe added voltage, the splash screen will appear, but I'm not sure if I can increase it without breaking the chip.

                    Again, I removed the uSD card and splash screen appeared!

                    Comment


                    • #11


                      That is so weird.

                      Can you check the 3.3v at the other end of the connector?

                      What is it with and without the uSD installed?

                      Have you got another uSD card? How does it go?
                      Mark

                      Comment


                      • #12


                        Ok, I'll check it and I'll tell you the result (at the moment I'm travelling so it has to wait for a week because I haven't my multimeter...).

                        Maybe another uSD card will be right although I think introducing on the board is difficult, it could be broken but I'm not sure so I'll check what you told me before!

                        Thank you!

                        Comment

                        Working...
                        X