Announcement

Collapse
No announcement yet.

Reading and writing to the SSD1963

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

  • Reading and writing to the SSD1963

    I have a uVGA-III.

    Reading through the PICASO internal functions manual, I came across the Display I/O Functions. I see two functions that SHOULD allow me access to SSD1963 internal information: disp_WriteControl and disp_ReadWord. As a test, I tried to read the device descriptor block. Below is my attempt and my results.

    ATTEMPT:

    txt_MoveCursor (32, 20);
    print ("descriptor block parm1: ", [HEX2]disp_ReadWord () );
    txt_MoveCursor (33, 20);
    print ("descriptor block parm2: ", [HEX2]disp_ReadWord () );
    txt_MoveCursor (34, 20);
    print ("descriptor block parm3: ", [HEX2]disp_ReadWord () );
    txt_MoveCursor (35, 20);
    print ("descriptor block parm4: ", [HEX2]disp_ReadWord () );
    txt_MoveCursor (36, 20);
    print ("descriptor block parm5: ", [HEX2]disp_ReadWord () );


    RESULTS:

    descriptor block parm1: 01
    descriptor block parm2: 61
    descriptor block parm3: 61
    descriptor block parm4: 61
    descriptor block parm5: 61

    From the SSD1963_1.7.pdf document, I know that the descriptor block is supposed to be:

    parameter 1: 0x01
    parameter 2: 0x57
    parameter 3: 0x61
    parameter 4: 0x01
    parameter 5: 0xFF

    Thinking that maybe disp_ReadWord was grabbing two bytes rather than a single byte, I ran a slightly different test.

    ATTEMPT:

    txt_MoveCursor (32, 20);
    print ("descriptor block parm1: ", [HEX4]disp_ReadWord () );
    txt_MoveCursor (33, 20);
    print ("descriptor block parm2: ", [HEX4]disp_ReadWord () );
    txt_MoveCursor (34, 20);
    print ("descriptor block parm3: ", [HEX4]disp_ReadWord () );
    txt_MoveCursor (35, 20);
    print ("descriptor block parm4: ", [HEX4]disp_ReadWord () );
    txt_MoveCursor (36, 20);
    print ("descriptor block parm5: ", [HEX4]disp_ReadWord () );


    RESULTS:

    descriptor block parm1: 0001
    descriptor block parm2: 0061
    descriptor block parm3: 0061
    descriptor block parm4: 0061
    descriptor block parm5: 0061

    Does anyone have an idea why I'm getting the above results?

  • #2
    You are writing do the display before and after each data read, hence what you are reading isn't 'current' anymore.

    Try reading everything into an array and then write it to the display.
    r[0] := disp_ReadWord () ;
    r[1] := disp_ReadWord () ;
    r[2] := disp_ReadWord () ;
    r[3] := disp_ReadWord () ;
    r[4] := disp_ReadWord () ;
    Mark

    Comment


    • #3
      That works great. Thank you.

      Comment


      • #4
        Good stuff! Thanks for chiming in


        ______________________________________\
        We are the pioneers in providing ccna tutorial pdf dumps and 1Y0-A22 tutorials with here exam pass guarantee. Download our latest testking ccie sckans questions to pass real exam of mcitp training in www.muih.edu
        Last edited by hareem; 18th January 2015, 04:05 AM.
        hareem

        Comment

        Working...
        X