This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hello team,
1.We are trying to run the motor using universal lab example which is located in below path
“C:\ti\c2000\C2000Ware_MotorControl_SDK_4_00_00_00\solutions\universal_motorcontrol_lab”
2.We changed the 280025c code to 280049c code by following the steps given in “universal_project_and_lab_users_guide_pdf” (“C:\ti\c2000\C2000Ware_MotorControl_SDK_4_00_00_00\solutions\universal_motorcontrol_lab\doc”).
3.In the above document we are following section “3.3 Porting Reference Code to New C2000 MCU “ to change the code.
4.we are getting confusion at point number 4(which i have shown in below image).
5.how we can do this point "f28004x_flash_lib_is_eabi.cmd" file to change the memory map according to the used F28004x device.
FYI: We have replaced “f28004x_flash_lib_is_eabi.cmd” with “ f28004x_flash_cpu_is_eabi.cmd”
We are getting below error.
Thanks in advance
Do you see sections with those names in the f28002x_flash_lib_is_eabi.cmd file? You'll need to copy and paste those over into the F28004x cmd file and reassign them to different other RAM/Flash locations as needed.
For example, those ctrlVarsLoad* and motorVarsLoad* symbols are generated from these lines:
GROUP { user_data foc_data } LOAD = RAMM1D LOAD_START(ctrlVarsLoadStart), LOAD_SIZE(ctrlVarsLoadSize), LOAD_END(ctrlVarsLoadEnd) GROUP { sys_data ctrl_data motor_data } LOAD = RAMGS0 LOAD_START(motorVarsLoadStart), LOAD_SIZE(motorVarsLoadSize), LOAD_END(motorVarsLoadEnd)
Whitney
Hi Whitney Dewey,
Thanks for the reply,
You'll need to copy and paste those over into the F28004x cmd file and reassign them to different other RAM/Flash locations as needed.
How can i reassign the locations, I am not getting your point.
Is that universal lab project support other controllers ?
How can i reassign the locations, I am not getting your point.
I was referring to the "LOAD = <memory block name>" line. You may need to change the memory block where that data is being loaded if that memory is already full or doesn't exist. I think all the same memories on F28002x also exist on F28004x, but they may be at different locations or have different sizes, so you may need to make some changes.
Here are some articles about linker command files if you're new to editing them:
https://software-dl.ti.com/ccs/esd/documents/sdto_cgt_Linker-Command-File-Primer.html
https://software-dl.ti.com/ccs/esd/documents/c2000_c28x-compiler-understanding-linking.html
Is that universal lab project support other controllers ?
F28002x is the only one we provide in the SDK today and we'll be sharing an F28003x version toward the end of this year. We don't plan on adding an F28004x version, but porting it yourself like you're doing is very feasible.
Whitney