BRT Community
General Category => Discussion - EVE => Topic started by: rsc on May 23, 2019, 09:26:48 AM
-
hi,
we are using FT813 and pic32mz... on own app-board for our application.
Used display is AT070MP01
timing parameters:
// AT070MP01
lcdWidth = 800; // Active width of LCD display
lcdHeight = 480; // Active height of LCD display
lcdHcycle = 960; // Total number of clocks per line
lcdHoffset = 88; // lcdHoffset < (lcdHcycle - lcdWidth) // Start of active line
lcdHsync0 = 0; // Start of horizontal sync pulse
lcdHsync1 = 48; // End of horizontal sync pulse
lcdVcycle = 528; // Total number of lines per screen
lcdVoffset = 32; // lcdVoffset < (lcdVcycle - lcdHeight) // Start of active screen
lcdVsync0 = 0; // Start of vertical sync pulse
lcdVsync1 = 3; // End of vertical sync pulse
lcdPclk = 2; // Pixel Clock
lcdSwizzle = 0; // Define RGB output pins
lcdPclkpol = 0; // Define active edge of PCLK
For quick start we are using code from Application Note BRT_AN_014,
FT81X examples using the Microchip PIC microcontroller as the SPI master
with API_Layer, EVE_Layer and MCU_Layer.
Displayd App-Code:
void RSC_Text(void)
{
API_LIB_BeginCoProList(); // Begin new screen
API_CMD_DLSTART(); // Tell co-processor to create new Display List
API_CLEAR_COLOR_RGB(0, 0, 0); // Specify color to clear screen to
API_CLEAR(1,1,1); // Clear color, stencil, and tag buffer
API_COLOR_RGB(255, 255, 255); // Set color to white
API_CMD_TEXT(80, 30, 30, 0, "1) This is a test string! what is going wrong?"); // Draw the text string
API_COLOR_RGB(180, 180, 180); // Set color to white
API_CMD_TEXT(80, 80, 30, 0, "2) This is a test string! what is going wrong?"); // Draw the text string
API_COLOR_RGB(180, 180, 0); // Set color to white
API_CMD_TEXT(80, 130, 30, 0, "3) This is a test string! what is going wrong?"); // Draw the text string
API_COLOR_RGB(0, 180, 180); // Set color to white
API_CMD_TEXT(80, 180, 30, 0, "4) This is a test string! what is going wrong?");
API_COLOR_RGB(191, 191, 191); // Set color to white
API_CMD_TEXT(80, 230, 30, 0, "5) This is a test string! what is going wrong?");
API_COLOR_RGB(0, 180, 0); // Set color to white
API_CMD_TEXT(80, 280, 30, 0, "6) This is a test string! what is going wrong?");
API_COLOR_RGB(180, 0, 0); // Set color to white
API_CMD_TEXT(80, 330, 30, 0, "7) This is a test string! what is going wrong?");
API_COLOR_RGB(200, 191, 190); // Set color to white
API_CMD_TEXT(80, 380, 30, 0, "8) This is a test string! what is going wrong?");
API_COLOR_RGB(0, 0, 180); // Set color to white
API_CMD_TEXT(80, 430, 30, 0, "9) This is a test string! what is going wrong?");
API_DISPLAY(); // Tell EVE that this is end of list
API_CMD_SWAP(); // Swap buffers in EVE to make this list active
API_LIB_EndCoProList(); // Finish the co-processor list burst write
API_LIB_AwaitCoProEmpty(); // Wait until co-processor has consumed all commands
//APP_SnapShot2PPM(); // Un-comment to take snapshot (see BRT_AN_014)
while(1)
{
}
}
After successfully init we display same strings on display with different
text colors (see appendix).
Problem: if R > 190, G > 190, B > 190 there are distortions in the text to see with
API_COLOR_RGB( R, G, B );
Distortions on displayd lines 1), 5).
Does anyone have any hints?
Best regards
rsc
-
Hi,
We will test it out here on one of our modules and see if we can reproduce the issue.
Best Regards, BRT Community
-
Hi,
We tested it here with ME813A module but we were unable to see the issue. The text was all displaying correctly. Could you post an image of the corruption which you saw (or send to support.emea@brtchip.com if you prefer) ? It might be something in the display settings - do all items (such as points and lines) also show corruption when any of the colours is greater than 190?
Best Regards,
BRT Community
-
Hi,
corruption on screen if colours >190 on own board with ft813 and pic32mz2048efm144.
1) Text APP_Text example with changes for a better indication of the error
API_COLOR_RGB(255,255,255); // terrible
API_COLOR_RGB(190,190,190); // ok
>> do all items (such as points and lines) also show corruption when any of the colours is greater than 190? <<
- it looks like it's just in connection with text
Thank you in advance.
Best regards,
rsc
-
Hi,
I solved the problem. PCLK for LCD LVDS driver requires a R_pullup or R_pulldown to use rising/falling edge triggered clocking. Both were placed on PCB. I removed R_pulldown and it works.
Best regards
rsc
-
Hi,
We're pleased that you found the issue and have resolved it.
Just a few points to note if anyone else sees colour-dependent issues:
- This is often related to display settings and so check your display's RGB timings/polarity/PCLK rate in the display datasheet
- Check the Swizzle setting in case your board uses the RGB lines in a different order (Swizzle allows you to set various options for bit order and R/G/B colour order on the RGB pins to make PCB layout easier)
- If displaying bitmaps/images check that you have set COLOR_RGB to 255/255/255 before displaying the image as other colour settings will have a similar effect to looking at the image through coloured glass.
Best Regards, BRT Community