Member #158122

Member Since: October 24, 2010

Country: United States

  • Question - did the SW recently change such that the origin moved from lower left to upper left? Everything printed to newer devices (purchased a few weeks ago) appears in the opposite vertical order than text printed to older devices (purchased about a year ago.)

  • Interesting behavior with an OLED display.

    Newhaven Display NHD-0420DZW-AG5 paired with a serial backpack gives good operation but often swaps lines - instead of lines 1 2 3 4 (character positions 80 C0 94 D4) I get lines 2 1 4 3 with the same addresses. So line 1 is where line 2 should be etc. Resetting the driver uP does not fix this, but enough power cycling and it eventually “gets it right.” My setup:

    fputc(0x7C,ext); fputc(0x03,ext); delay_ms(10);     //20 char wide
    fputc(0x7C,ext); fputc(0x05,ext); delay_ms(10);     //4 lines 
    fputc(0xFE,ext); fputc(0b00000001,ext); delay_ms(10);       //clear screen 
    fputc(0xFE,ext); fputc(0b00000010,ext); delay_ms(10);       //Cursor home
    fputc(0xFE,ext); fputc(0b00000110,ext); delay_ms(10);       //No shift
    fputc(0xFE,ext); fputc(0b00001100,ext); delay_ms(10);       //Display on, no cursor, no blink
    fputc(0xFE,ext); fputc(0b00010000,ext); delay_ms(10);       //Move cursor instead of shifting display
    fputc(0xFE,ext); fputc(0b00101000,ext); delay_ms(10);       //Function set - 4 bit 2 line US characters
    fputc(0xFE,ext); fputc(0x80,ext); delay_ms(10);             //Start at location 0 (line 1 first char)
    fputc(0xFE,ext);  fputc(0x06,ext); delay_ms(10);            //Normal left to right printing 
  • Right, but isn’t there an 80 byte buffer? For me there is value in being able to get a print-to-LCD completed as quickly as possible, since in many cases I’m doing a software UART and must make the UART simulator atomic.

  • No 115200kbps? I’m disappointed; that’s my default for on-board serial comms.

No public wish lists :(