NHD-5.0-800480TF-ATXL-CTP Flickering

Comments

3 comments

  • Michael_L

    Your issue seems to be caused by some settings on your MCU, as this behavior is not reflective of a defect.  Can you try changing your pixel clock frequency to see if you see any favorable changes on the display?  Perhaps faster than what you have already tried, and also confirm this frequency with a scope.  Have you tried changing the BPP setting?  Try playing with any settings related to vertical active length/resolution as well, as it seems this fading is happening on at a portion of the display.

    0
  • mhsqe

    Hello Michael,
    thank you for your reply. We managed to resolve the two issues:

    Display Fading: After setting the clock to 40 Mhz the problem is solved. (Proviously we had only 20 Mhz due to a wrong clock divider)
    (Edit: If you use the LPC Open Library there is a hardcoded Pixel clock divider with a todo comment in the file lcd_18xx_43xx.c)

    Color Flickering: A horizontal back porch of 87 instead to 88 solved this issue.

    Here are the final parameters:
    static const LCD_CONFIG_T NHD50TFT_LCD =
    {
       .HBP = 87,                  /*!< Horizontal back porch in clocks */
       .HFP = 40,                  /*!< Horizontal front porch in clocks */
       .HSW = 48,                  /*!< HSYNC pulse width in clocks */
       .PPL = 800,                  /*!< Pixels per line */
       .VBP = 32,                  /*!< Vertical back porch */
       .VFP = 13,                  /*!< Vertical front porch */
       .VSW = 10,                  /*!< VSYNC pulse width */
       .LPP = 480,                  /*!< Lines per panel */
       .IOE = 1,                  /*!< Invert output enable, 1 = invert */
       .IPC = 1,                  /*!< Invert panel clock, 1 = invert */
       .IHS = 0,                  /*!< Invert HSYNC, 1 = invert */
       .IVS = 0,                  /*!< Invert VSYNC, 1 = invert */
       .ACB = 1,                  /*!< AC bias frequency in clocks (not used) */
       .BPP = 5,                  /*!< Maximum bits per pixel the display supports 5->24bpp*/
       .LCD = LCD_TFT,               /*!< LCD panel type */
       .color_format = LCD_COLOR_FORMAT_RGB,   /*!< BGR or RGB */
       .Dual = 0                  /*!< Dual panel, 1 = dual panel display */
    };

    Looks nice! 

    0
  • Michael_L

    Great!  Thank you for sharing your solution! 

    0

Please sign in to leave a comment.