Hi Folks,
I'm porting my ColdFire MQX application over to Kinetis and I', hitting a bit of a brick wall when I try to build an existing CF application and then when I can see it working, I’ll port it to the Kinetis. First off, the path information for compiling isn’t correct – it looks like the installation for CW and MQX isn’t 100%. To get the code to build, in the Project Properties I had to:
Add "Include Directory" for C Source Files: "${MQX_PATH}/m522223evb.cw10/psp |
Add "Include Directory" for C Source Files: "${MQX_PATH}/m522223evb.cw10/bsp after psp |
Now, the compilation works okay, but I am getting the error:
C:\Program Files\Freescale\CW MCU v10.1\gnu\bin\make: *** No rule to make target `C:/Freescale MQX 3.7 EAR/lib/m52223evb.cw10/mqx/intflash.lcf', needed by `Blink5.elf'. Stop.
I tried inserting:
Add "Include Directory" for Object File: "${MQX_PATH}/m522223evb.cw10/bsp |
because I thought this is where the linker picks up the object location and there isn’t any “mqx” folder under the “m52223evb.cw10” folder. I don’t see anywhere else where this can be done. Any ideas?
Thanx,
myke
Solved! Go to Solution.
Hi Mykepredko,
Sorry for delay...my computer had virus.
Often when I have connection issue with a project I will try to step back and either use another version of CodeWarrior (easy for me but if you have older one handy) or try to find an exiting project (FSLMQX/mqx/examples/hello) or create a new baremetal project for the processor. A trouble project sometimes is very difficult to debug since they have soooo many settings that could go wrong.
Please try to run existing project or create a new baremetal project for the processor and see if that allows you to connect.
Assuming it does then either you can compare the configuration windows (fun...not) or create a new project as similar to the one you are debugging and pull your code base into the working project.
Hope this helps.
Regards,
David
Mike, Browse to the folder where the MQX libraries are placed, (MQX install folder)\lib\(target).cw10\mqx and verify that the .lcf file is there. On the 3.6.2 version, the lcf file was there. I can't tell you about the 3.7 version because I don't have it yet. If the lcf file is not where you expected, check that the (MQX install folder)\mqx\build\bat\bsp_(target).bat is being run after rebuilding the MQX libraries. Make sure you have rebuilt both debug and release versions.
Hi Cart,
Sorry, I've already done that - I modify my .lcf quite a bit for my application so I'm very familiar with it.
I appreciate you taking the time to make the suggestion - Thanx!
myke
Hi Myke,
A link that might help you. It is to check the OSBDM version and also help to update it.
Regards,
David
Hey Folks,
Moving along, I discovered that you need to do the following to get the linking to complete:
In "C/C++" Buid - Settings - Tool Settings - ColdFire Linker - Input - Link Command File - Change the path to "${MQX_Path}\lib\m52223evb.cw10\bsp\intflash.lcf" |
In "C/C++" Buid - Settings - Tool Settings - ColdFire Linker - Input - Library Search Paths - Added the path to "${MQX_Path}/lib/m52223evb.cw10/psp" |
Hi Mykepredko,
The MCF52223EVB projects aren't fully supported yet in FSLMQX3.7.0EAR...ergo your issues.
I've been playing with the FSLMQX/mqx/examples/hello example for the MCF52223EVB and generically had to do the following:
- change the paths for compile and link from:
FSLMQX/lib/mqx
to:
FSLMQX/lib/bsp and FSLMQX/lib/psp
Once it compiled and linked I too got the error during flash that you got. Turns out the paths for the P&E *.cfg and *.mem were pointing to the FSLMQX/lib/mqx/dbg path and should be FSLMQX/lib/bsp/dbg.
Note I had to update this for both Relase and Debug targets to get the erase and programming to work correctly.
My guess is it is the Release target paths that get used.....
To update those paths do following:
Right click on your application project and selecte Properties.
Click on Run/Debug Setting and select one of the Launch configurations, then click Edit.
Click Edit under the Remote system heading.
Click the System tab next to the Connect (default) tab.
Update the path from:
${MQX_PATH}/lib/m52223evb.cw10/mqx/dbg/m52223evb.cfg
To:
${MQX_PATH}/lib/m52223evb.cw10/bsp/dbg/m52223evb.cfg
Repeat for the Memory configuration.
Repeat steps for the other Launch configuration.
Then try your Flash File To Target process.
Regards,
David
Hi David,
Thanx for the suggestions but no joy.
I still get the same message saying:
Error: Connect Failed.
Can't connect. The Debugger can not connect to the P&E BDC interface or targetted hardware board.(ColdFire GDI Protocol Adapter
Error: command failed
I tried changing the "Connection type:" to "Generic GDI" as well some others with no luck. The correct one seems to be a "P&E ColdFire V234 Multilink\Cyclone Max" and when I click on "Compatible Hardware" in the "Connection" box, I get a web page with three devices, one of which is my ColdFire Multilink Adapter. The "Interface" (also under "Connection") options available to me are "USB Multilink, Embedded OSBDM - USB Port", "Cyclone Max - Serial Port", "Cyclone Max - Ethernet Port" and "Cyclone Max - USB Port". When I try to program and get the P&E COnnection Assistant and it seems to be looking for a BDM port.
Any ideas?
Thanx,
myke
Hi Mykepredko,
Sorry for delay...my computer had virus.
Often when I have connection issue with a project I will try to step back and either use another version of CodeWarrior (easy for me but if you have older one handy) or try to find an exiting project (FSLMQX/mqx/examples/hello) or create a new baremetal project for the processor. A trouble project sometimes is very difficult to debug since they have soooo many settings that could go wrong.
Please try to run existing project or create a new baremetal project for the processor and see if that allows you to connect.
Assuming it does then either you can compare the configuration windows (fun...not) or create a new project as similar to the one you are debugging and pull your code base into the working project.
Hope this helps.
Regards,
David
Hi David,
That's not a bad suggestion; I think I'm going to try installing CW 10.0 on another PC and see if I can to the point where I can at least program the CF and HCS08 devices again.
One of the issues is, I use a Win 7 PC for development, which means I have to use CW 10.x but using another PC, along with this I also want to use Kinetis in my app. I suspect my problems are deeper than an incorrect configuration.
Well, this is why they call it the blues bleeding edge.
Thanx, I'll let you know how I make out.
Good luck with your PC - I hope you can eradicate the virus fairly easily.
myke
Hi Myke,
I have a desktop that uses Win7. When I install CW10.x I do not use the "Program Files" path as it has extra permission stuff that gets affects operations unless you always run as Admin.
When I install I use the default path BUT delete the "Program Files" portion of the path so that the default becomes:
c:\Freescale\CW MCU v10.x. Also when installing CW10.x other installs for the debugger drivers get installed. Another reason not to install to Program Files as it might affect their proper install.
I do the same when installing FSLMQX.
Note always install CW first, then FSLMQX as FSLMQX copies some files to CW path.
Good luck.
Regards,
David
Hi David,
Thanx for the suggestion - I have been installing MQX at the C root, but not CW. I do always run as administrator and while that was a bit of an issue with CW 10.0, I haven't seen the same issues with 10.1.
I'll try deinstalling both and then reinstall CW at the root followed by MQX.
Once this is done, I'll let you know how it goes.
Thanx again,
myke