I started a new build environment using CW 10.2 and MQX TWRK60D10M. After installing the MQX 3.8, I rebuild the library as suggested in the installation procedure. I ran into the following errors. How to work around this?
Description Resource Path Location Type
';' expected main.c /pe_demo_twrk60d100m/Source line 299 C/C++ Problem
';' expected main.c /pe_demo_twrk60d100m/Source line 300 C/C++ Problem
';' expected main.c /pe_demo_twrk60d100m/Source line 301 C/C++ Problem
';' expected main.c /pe_demo_twrk60d100m/Source line 431 C/C++ Problem
illegal implicit conversion from 'int' to 'int *' main.c /pe_demo_twrk60d100m/Source line 233 C/C++ Problem
illegal implicit conversion from 'int' to 'int *' main.c /pe_demo_twrk60d100m/Source line 310 C/C++ Problem
illegal implicit conversion from 'int' to 'int *' main.c /pe_demo_twrk60d100m/Source line 391 C/C++ Problem
illegal implicit conversion from 'int' to 'int *' main.c /pe_demo_twrk60d100m/Source line 440 C/C++ Problem
Link failed. pe_demo_twrk60d100m C/C++ Problem
Link failed. secemail_twrk60d100m C/C++ Problem
Link failed. sectelnet_twrk60d100m C/C++ Problem
Link failed. secwebserver_twrk60d100m C/C++ Problem
Link failed. telnet2ser_twrk60d100m C/C++ Problem
Link failed. web_hvac_twrk60d100m C/C++ Problem
mingw32-make: *** [intram_d.afx] Error 1 secemail_twrk60d100m C/C++ Problem
mingw32-make: *** [intram_d.afx] Error 1 sectelnet_twrk60d100m C/C++ Problem
mingw32-make: *** [intram_d.afx] Error 1 secwebserver_twrk60d100m C/C++ Problem
mingw32-make: *** [intram_d.afx] Error 1 telnet2ser_twrk60d100m C/C++ Problem
mingw32-make: *** [intram_d.afx] Error 1 web_hvac_twrk60d100m C/C++ Problem
mingw32-make: *** [Source/main.obj] Error 1 pe_demo_twrk60d100m C/C++ Problem
not an lvalue main.c /pe_demo_twrk60d100m/Source line 571 C/C++ Problem
Overflow in segment: rom from section: .main_application Segment reserved size is: 0x0000fbe0 -- Overflow of: 0x00005c8c telnet2ser_twrk60d100m C/C++ Problem
Overflow in segment: rom from section: .main_application Segment reserved size is: 0x0000fbe0 -- Overflow of: 0x00008ab8 sectelnet_twrk60d100m C/C++ Problem
Overflow in segment: rom from section: .main_application Segment reserved size is: 0x0000fbe0 -- Overflow of: 0x00009bf8 secemail_twrk60d100m C/C++ Problem
Overflow in segment: rom from section: .main_application Segment reserved size is: 0x0000fbe0 -- Overflow of: 0x0000d6e0 secwebserver_twrk60d100m C/C++ Problem
Overflow in segment: rom from section: .main_application Segment reserved size is: 0x0000fbe0 -- Overflow of: 0x0002fb54 web_hvac_twrk60d100m C/C++ Problem
undefined identifier 'DA1_Device' main.c /pe_demo_twrk60d100m/Source line 203 C/C++ Problem
undefined identifier 'DA1_Device' main.c /pe_demo_twrk60d100m/Source line 204 C/C++ Problem
undefined identifier 'DA1_Error' main.c /pe_demo_twrk60d100m/Source line 220 C/C++ Problem
undefined identifier 'DA1_Error' main.c /pe_demo_twrk60d100m/Source line 223 C/C++ Problem
undefined identifier 'DA1_Error' main.c /pe_demo_twrk60d100m/Source line 226 C/C++ Problem
undefined identifier 'DA1_Error' main.c /pe_demo_twrk60d100m/Source line 515 C/C++ Problem
undefined identifier 'DA1_Error' main.c /pe_demo_twrk60d100m/Source line 568 C/C++ Problem
undefined identifier 'DA1_Error' main.c /pe_demo_twrk60d100m/Source line 611 C/C++ Problem
undefined identifier 'DA1_UserDataPtr' main.c /pe_demo_twrk60d100m/Source line 202 C/C++ Problem
undefined identifier 'DA1_WatermarkValue' main.c /pe_demo_twrk60d100m/Source line 570 C/C++ Problem
undefined identifier 'DA1_WatermarkValue' main.c /pe_demo_twrk60d100m/Source line 574 C/C++ Problem
undefined identifier 'DA1_WatermarkValue' main.c /pe_demo_twrk60d100m/Source line 613 C/C++ Problem
undefined identifier 'DA1_WatermarkValue' main.c /pe_demo_twrk60d100m/Source line 614 C/C++ Problem
undefined identifier 'DA1_WatermarkValue' main.c /pe_demo_twrk60d100m/Source line 616 C/C++ Problem
undefined identifier 'LDD_DAC_TBufferWatermark' main.c /pe_demo_twrk60d100m/Source line 138 C/C++ Problem
undefined identifier 'LDD_TDeviceData' main.c /pe_demo_twrk60d100m/Source line 135 C/C++ Problem
undefined identifier 'LDD_TError' main.c /pe_demo_twrk60d100m/Source line 137 C/C++ Problem
undefined identifier 'LDD_TUserData' main.c /pe_demo_twrk60d100m/Source line 136 C/C++ Problem
undefined identifier 'LED' main.c /pe_demo_twrk60d100m/Source line 467 C/C++ Problem
undefined identifier 'LED' main.c /pe_demo_twrk60d100m/Source line 470 C/C++ Problem
undefined identifier 'LED' main.c /pe_demo_twrk60d100m/Source line 473 C/C++ Problem
undefined identifier 'LED' main.c /pe_demo_twrk60d100m/Source line 481 C/C++ Problem
undefined identifier 'PWM_CNT_INP_FREQ_U_0' main.c /pe_demo_twrk60d100m/Source line 323 C/C++ Problem
undefined identifier 'PWM_MaxValue' main.c /pe_demo_twrk60d100m/Source line 321 C/C++ Problem
undefined identifier 'PWM_Step' main.c /pe_demo_twrk60d100m/Source line 320 C/C++ Problem
undefined identifier 'PWM_Value' main.c /pe_demo_twrk60d100m/Source line 319 C/C++ Problem
undefined identifier 'PWM_Value' main.c /pe_demo_twrk60d100m/Source line 362 C/C++ Problem
undefined identifier 'PWM_Value' main.c /pe_demo_twrk60d100m/Source line 365 C/C++ Problem
undefined identifier 'PWM_Value' main.c /pe_demo_twrk60d100m/Source line 368 C/C++ Problem
undefined identifier 'TRG_CNT_INP_FREQ_U_0' main.c /pe_demo_twrk60d100m/Source line 235 C/C++ Problem
undefined identifier 'TRG_CNT_INP_FREQ_U_0' main.c /pe_demo_twrk60d100m/Source line 236 C/C++ Problem
undefined identifier 'WDog1_WATCHDOG_TIMEOUT' main.c /pe_demo_twrk60d100m/Source line 401 C/C++ Problem
undefined identifier 'WDog1_WATCHDOG_WINDOW' main.c /pe_demo_twrk60d100m/Source line 402 C/C++ Problem
Hi Bryan1z,
Two things to try:
1) Make sure CW10.2 has been updated (instructions below)
2) Open the FSL_MQX_in_CW_10_x.pdf (in C:\Freescale\Freescale MQX 3.8\doc\tools\cw) and do steps on slide 46 that re-generate the BSP to have PE code.
Hope this helps.
Regards,
David
Online update procedure:
A) If your computer is connected to the Internet, select
Install New Software in the Help Menu.
B) When the Installdialog is displayed, click the ‘Available SoftwareSites’ link.
C) When the Available Software Sitesdialog is displayed, click on the Freescale (link should be following:
http://freescale.com/lgfiles/updates/Eclipse/MCU10_1/com.freescale.mcu.updatesite/
D) Before you can use the updated location, you must click on Test Connection.If you fail to
click on Test Connection, the location will be lostand you will need to restart at step C above
and fill in the entire url.
E) Now on the Available Software Sites Click OKand you are ready to update the software.
I check/enable all the options before doing updte. Sometime I have to do update in two steps...MCU v10.2 Update 1.0.0 first then the MCU v10.2 Service Packs second.
Hi David,
I updated all the patches, including the latest service pack for Windows from Freescale's website. I am one step closer to getting the sample code to run on the target.
I built and downloaded the hello application to the tower. It debugger complained that it can't open "MK60D10.mem" file, and bracket (twrk60d100m.mem).
Hi Bryan1z,
Sorry for delay.
Are you running?
If not do you have MQX (and possible CW) installed to "C:\Program Files\Freescale\..." path on a Windows 7 machine?
If yes un-install and re-install CW and do updates. Then install MQX. But for both install to "C:\Freescale\...".
"Program Files" on Windows 7 has added protections that mess with CW and MQX. So installing to another location resolves issues.
I just received my TWR-K60D100M, rebuilt the BSP and PSP, loaded hello example, selected the "Int Flash Debug" target and was able to program flash and execute the hello world.
I'm using the P&E Universal Multilink JTAG debugger hardware (it is fast than using the OSJTAG on board) so I updated my BSP twrk60d100m.h to use the TWR-SER serial interface.
#ifndef BSP_DEFAULT_IO_CHANNEL
#if BSPCFG_ENABLE_TTYD
#define BSP_DEFAULT_IO_CHANNEL "ttyd:" /* TWR-SER polled mode */
#define BSP_DEFAULT_IO_CHANNEL_DEFINED
#else
#define BSP_DEFAULT_IO_CHANNEL NULL
#endif
#else
/* undef is for backward compatibility with user_configh.h files which have already had it defined */
#undef BSP_DEFAULT_IO_CHANNEL_DEFINED
#define BSP_DEFAULT_IO_CHANNEL_DEFINED
#endif
Regards,
David
Hi David,
Thanks for the information. I re-install the system and it seems to behave now.
I am having trouble with displaying the printf on the eclipse console in MQX. I noticed you have commented on the IO Channel your e-mail, will this work with MQX? I checked online and forum, it seems that it doesn’t support it. Please advise.
I am using the TWRK60D100M for BSP development, my target doesn’t have serial interface. What is my option?
Thanks,
Bryan
Hi Bryan1z,
C:\Freescale\Freescale MQX 3.8b1\doc\mqx\MQXIOUG.pdf
Read Chapter 22 Debug IO Driver.
In twrk60d100m.h
Use "iodebug:" IDE debug...change header as follows:
#if #define BSPCFG_ENABLE_IODEBUG "iodebug:" /* IDE debug console...printf() written to console window of CW10.2*/
#define BSP_DEFAULT_IO_CHANNEL_DEFINED
#else
#define BSP_DEFAULT_IO_CHANNEL NULL
#endif
In your user_config.h
#define BSPCFG_ENABLE_IODEBUG 1 <-- Change from 0 to "1"
Lastly there is example:
C:\Freescale\Freescale MQX 3.8\mqx\examples\io_debug
Regards,
David