Hi,
Is there sample code available for the following setup ?
eGui
MQX 3.8.1
CodeWarrior 10.2
TWR-K70 & TWR-LCD-RGB (rev B)
This would really help me!
I tried to port K70_eGUI_PE sample code to MQX, but with no success so far. (see details and problem below)
I have a bare metal demo K70_eGUI_PE.
This is eGui + PE+ CW10.2 for the TWR-K70 en TWR-RGB-LCD. It works ok.
I copied all D4D code into a new MQX 3.8.1 demo application. Compiling is ok, but it crashes in d4dlcdhw_k70_lcdc.c when setting the DMA Burst mode register.
//Set background plane DMA to burst mode
LCDC_LDCR &= ~(LCDC_LDCR_BURST_MASK);
d4d_user_cfg.h :
#define D4D_LLD_LCD d4dlcd_frame_buffer // the name of low level driver descriptor structure
#define D4D_LLD_LCD_HW d4dlcdhw_k70_lcdc
#define D4D_LLD_TCH d4dtch_cr_touch
I don't get further than :
Main.c :
D4D_Init((D4D_SCREEN*)&screen_Demo);
d4dlcdhw_k70_lcdc.c -> LCDC_LDCR &= ~(LCDC_LDCR_BURST_MASK); // STOPS HERE !!
Any help/idea's are welcome!
Many thanks in advance
Regards,
Michris
已解决! 转到解答。
Here's a couple resources that might help.
This application note and software uses eGUI within MQX, but drives the TWR-LCD (through SPI or FlexBus) from a K60 (100MHz). It shows how eGUI can be integrated into a project and serviced from a task.
AN4346, Designing a Working Prototype using MQX ™ RTOS and Tower System for Kinetis Microcontrollers
This lab and software package uses PEG within MQX to drive TWR-LCD-RGB from a K70 (120/150MHz).
Build Your Own Embedded System (BYOES) – 2012 (exe)
Build Your Own Embedded System (BYOES) LABs - Prototyping Systems at ESC 2012
Best of luck,
Mac
Hi, here are two demo (snapshots) of new eGUI 3.0 running on MQX4.0.
I hope that this helps.
Both files are renamed zip files (I have it renamed due to email firewalls :-) )
I also add very early version of converter utility.
Petr
Hi Petr,
I tried the zipped demo (Demo_eGUIv3_MQXv4_CWv10.3) you provided in this thread and got what seems to be a hard coded path issues. Your original code seems to contain a hard coded path called C:\projectw\eGUI_CW... I searched everywhere in trying to locate where this path could be but I just can't find it.
Also note that I just imported your project into my CW10.3. I did not do anything else and immedately get the warning messages.
When I compile your project I get the error that you see per below. Again that seems to be related to that "unknown" path.
Could you possibly point me to the solution?
Thanks
Seb
Description | Resource | Path | Location | Type |
Invalid project path: Include path not found (C:\projectw\eGUI_CW_MQX_02_13\_Official_Demos\EGUI_D4D_Demo\TWR_K70N120\MQX\sources\D4D_Configuration). | eGUI | pathentry | Path Entry Problem | |
mingw32-make: *** No rule to make target `C:\projectw\eGUI_CW_MQX_02_13\Demo_eGUIv3_MQXv4_CWv10.3\_Official_Demos\EGUI_D4D_Demo\TWR_K70N120\MQX\Sources\demo_screen.c', needed by `Sources/demo_screen_c.obj'. Stop. | eGUI | C/C++ Problem | ||
Invalid project path: Include path not found (C:\projectw\eGUI_CW_MQX_02_13\D4D). | eGUI | pathentry | Path Entry Problem |
Hi,
To answer this problem, you will find attached a doc explaining step by step the process to solve the path issues for the Demo_eGUIv3_MQXv4_CWv10.3.pdf project.
Hope this will help.
Have a great day,
Pascal Irrle
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hello,
Sorry I’m not author of this demo application neither familiar with CW10.x, but the errors points that you have to check all paths sets in project and also whole directory tree of the demo on our disk.
And also try to clean up the project.
Best regards
Petr
Hello,
the release of new eGUI is coming :-) For those who are don't want to be patient, here is (as I hope) final package of source code of eGUI.
Please rename the file to EXE.
I also add the newest version of Doxygen documentation. just unpack the zip file and run the batch file or directly in generated output the index.html file.
Best regards
Petr
Hi Petr,
Thanks, the code sample code work well, i am able to read the 24bits bmp image file from the SD card and display on the LCD, but i failed to display the 24bits bmp from the C array image (which generated by eGUI Converter Utility 3.0Alpha in 24bit Color (8-8-8) with compression OFF) from the internal flash, the LCD just showing blank and with mouse cursor. Below is the generated code, i would like to ask do you have any working sample code which able to display 24bits bmp from the C array image?
I also set #define D4D_BMP_16MNOPAL_ENABLE D4D_TRUE
Code generated by eGUI converter:
Declare for screen:
D4D initialization:
hope to here from you soon, or anyone else have answer for me, thanks!
Hello Petr,
This code compiles with 17 errors on my side.
For example in d4d_font.c at line 740 I get:
Undefined : "d4dlcd_frame_buffer"
Why is that? d4dlcd_frame_buffer is not defined. Where should I put it?
Hi,
do you have added in your project Frame buffer driver? Bacause this caused to select in configuration file that you are have selected Frame buffer driver like this:
#define D4D_LLD_LCD d4dlcd_frame_buffer // the name of low level driver descriptor structure
But this files are not compiled in project. I mean files:
d4dlcd_frame_buffer.c
d4dlcd_frame_buffer.h
Please check this.
Petr
I wanted to share that I ran into a problem with the MQX demo, and found the resolution.
The demo installs a kernel ISR in MQX, and this requires the vectors to be in RAM so they can be changed dynamically. My K70 BSP had the vectors in ROM by default, and this caused the D4D Init to fail.
To resolve it, add the line below to user_config.h, then rebuild the BSP, PSP, and the eGUI application.
#define MQX_ROM_VECTORS 0 // place vectors in RAM
Thank you very much, it helped.
After a day of work I get the LCD display finally to work. I converted the Demo for MQX4 and eGUI 3.0 and it displays a first screen. But there's now an another problem. The touch sence does not work. :-(
I verified the problem with examples in MQXes.
Example tchres_twr40x256 from MQX3.8.1 works OK, but
example tchres_twr40x256 from MQX4 doesn't work. Compilation is without errors and program runs. It just get's always no touch detection.
Both examples are identical and I configured the both MQXes same.
UPDATE1:
Bug is somewhere in ADC drivers of MQX4. To get the touch sense to work I had to replace files in MQX4 with files from MQX 3.8.1. I replaced:
..\Freescale_MQX_4_0\mqx\source\io\adc\adc.c
..\Freescale_MQX_4_0\mqx\source\io\adc\adc.h
..\Freescale_MQX_4_0\mqx\source\io\adc\adc_conf.h
..\Freescale_MQX_4_0\mqx\source\io\adc\adc_prv.h
..\Freescale_MQX_4_0\mqx\source\io\adc\kadc\adt_kpdb.c
..\Freescale_MQX_4_0\mqx\source\io\adc\kadc\adc_mk40.c
..\Freescale_MQX_4_0\mqx\source\io\adc\kadc\adc_mk40.h
..\Freescale_MQX_4_0\mqx\source\io\adc\kadc\adc_kadc.c
..\Freescale_MQX_4_0\mqx\source\io\adc\kadc\adc_kadc.h
Exactly for this reason I don't like to use the newest operating systems. :-)
Finally works the Demo and the tchres mqx example right. :-)
Should I report the bug to Freescale or will you take care of it?
Hello,
this point to known bug in MQX TCHRES driver.
There was forget check the right size of read data like (just example): if(2 != fread(&buff, sizeof(TCHRES_STR), 1 , &dev)).
Somebody forgot to compare the result to right read value and forgot in code old constant.
In attachment should be fixed file.
Petr
Hi.
I am solving the same problem, but without success.
My configuration is:
eGui
MQX 3.8.1
CodeWarrior 10.3
TWR-K40X256 and TWR-LCD
The demo project "EGUI_D4D_Demo" under MQX 3.7 worked, but when i compile it under MQX 3.8.1 (compiling works ok, without errors) and flash it to MCU nothing appear on LCD. I had to update two lines of code in main but it has no impact on this problem.
The Compiled project under MXQ 3.7 has 140 kB and under MQX 3.8.1 it has just 100 kB.
I guess that there is some problem in drivers in MQX 3.8.1.
Pls, could you describe me how you get your system to work?
Thanks.
Here's a couple resources that might help.
This application note and software uses eGUI within MQX, but drives the TWR-LCD (through SPI or FlexBus) from a K60 (100MHz). It shows how eGUI can be integrated into a project and serviced from a task.
AN4346, Designing a Working Prototype using MQX ™ RTOS and Tower System for Kinetis Microcontrollers
This lab and software package uses PEG within MQX to drive TWR-LCD-RGB from a K70 (120/150MHz).
Build Your Own Embedded System (BYOES) – 2012 (exe)
Build Your Own Embedded System (BYOES) LABs - Prototyping Systems at ESC 2012
Best of luck,
Mac