This port is intended to use with the EVK-MIMXRT700. You will also need the RK055HDMIPI4MA0 display board,
other displays may be plugged but code changes on the touch panel and display settings may be required.
The idea of this project is to provide a quick start to users that have this board to deploy they first
LVGL application to it, by default this project execute the lvgl_demo_widgets where a collection of
widgets get drawn on the display allowing the user to interact to it.
This project is intended to be used with MCU Expresso IDE.
The board combo can be acquired from the NXP Direct channel:
The current setup runs using VGLite, and performs quite well. Some screens are capped at 30fps due to the default setup of the display board. The refresh rate may be tweaked by editing the display clock divisor like so to raise max fps to 60.
diff --git a/_boards/mimxrt700evk/display_support.c b/_boards/mimxrt700evk/display_support.c
index ee5317e65..41245ad72 100644
--- a/_boards/mimxrt700evk/display_support.c
+++ b/_boards/mimxrt700evk/display_support.c
@@ -707,7 +707,7 @@ static void BOARD_InitLcdifClock(void)
*/
CLOCK_AttachClk(kMAIN_PLL_PFD2_to_LCDIF);
#if ((DEMO_PANEL == DEMO_PANEL_RK055AHD091) || (DEMO_PANEL == DEMO_PANEL_RK055MHD091))
- CLOCK_SetClkDiv(kCLOCK_DivLcdifClk, 18);
+ CLOCK_SetClkDiv(kCLOCK_DivLcdifClk, 9);
#elif (DEMO_PANEL == DEMO_PANEL_RASPI_7INCH)
CLOCK_SetClkDiv(kCLOCK_DivLcdifClk, 27);
#else
- MCU: NXP IMXRT700 Cortex-M33 running up to 325 MHz
- RAM: 7.5MB of internal RAM
- Flash: 64MB of OSPI based External Flash
- GPU: VGLite compatible GPU
- Resolution: 480 x 800
- Display Size: 7"
- Interface: MIPI-DSI
- Color Depth: 32-bit ARGB8888 format
- Technology: IPS
- Touch Pad: Capacitive touch panel
- First of all disconnect all power cables from the board
- Connect the display panel to the board FPC-type connector J52
- Connect USB cable to the J54 micro-USB it provides both Debug port plus console
- Finally connect the power cable to the board barrel-jack DC_5V_IN
- Make sure pins 7-8 are shorted on J2, to ensure power from the DC input, as USB power is not enough to power the board and the display and may cause brownouts.
- You need to install the MCU-Expresso IDE from NXP website:
- It is avaibalble to Linux, Windows or Mac
- Refer the link: https://www.nxp.com/design/design-center/software/development-software/mcuxpresso-software-and-tools-/mcuxpresso-integrated-development-environment-ide:MCUXpresso-IDE
- Clone this repository repository, and make a backup of the CMakePresets.json file.
- Open the MCUXpresso for VSCode
- In the quickstart panel choose Import Project
- Choose folder
- Navigate to the path where you cloned this repo
- Then hit Open
- In the dropdown choose MCUXpresso SDK
- Select the correct SDK repository and toolchain
- Click Import
- Set up the project:
- under Associate repository for project choose your board (MIMXRT700-EVK)
- under Choose core, select Cortex-M33 core 0
- Unfortunately these settings seem to be overwritten in the imported project, so either revert any changes to the CMakePresets.json file, or edit the file, and under each configurePreset, update
"board": "mimxrt700evk", "core_id": "cm33_core0", - Build the project:
- In the extension tab, in the Projects pane, highlight the newly imported project, and you should see a green run button. To the left will be the build button.
- Click on Build Project
- Run or Debug:
- Use the green run button to flash the board and debug your project. It will break at main.
If you find any issues with the development board feel free to open an Issue in this repository. For LVGL related issues (features, bugs, etc) please use the main lvgl repository.
If you found a bug and found a solution too please send a Pull request. If you are new to Pull requests refer to Our Guide to learn the basics.