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.
Hi,
I want to flash PMSM code available in the controlsuit (Path C:\ti\controlSUITE\development_kits\DRV830x-HC-C2-KIT_v105). The processor used is F28035.
Is there any standard procedure. Could anyone share the same.
thx
KVRao
Thanks Gautham.
The flash configuration is not available in the Project -> Build configuration -> Set Active. Could you please help me with the code or procedure.
thx
KVRao
Hi K.V.,
Do you have Verbose Diagnostics enabled? That may help give me more insight into the error CCS is throwing at you
Please check here: File -> Properties -> Build -> C2000 Compiler -> Advanced Options -> Diagnostic Options -> Verbose Diagnostics checkbox
If this is not enabled, please enable and recompile. We should be able to get more info on your problem then. Post the error messages here
Sean
Kvrao,
This looks like an issue with CCS locating the C source files for some of the files included in your project. Have you correctly linked in DRV8301_SPI.c, PM_Sensorless.c and PM_Sensorless-DevInit_F2803x.c?
You can check the link setting by doing the following:
Right click on the project name, i.e Example_28035_Flash, then select Properties from the drop down box
Expand the Resource section, and select Linked Resources
Select the Linked Resources tab at the top of the resultant page
This tab shows all of the linked source files included in your CCS project. Please check the location of the three C source files I mentioned above, as they are causing a compiler/linker issue. Are the locations resolvable? If you linked the locations via a variable (i.e. "PROJECT_LOC" or something similar), is the variable address correct?
Please try to correctly point your CCS project to the three problematic source files and report back
Sean
Dear Sean,
Thanks for your inputs resolved the linked file issues.
Could build the code successfully. However still facing errors as in the attached image. Please review and suggest.
thx & rgds
KVRao
KVRao,
It appears that you did not include any attached image in your last post. Please try again so I can review the image.
Sean
Thanks for your support and I appreciate it. Did changes as suggested and its really cool. Many errors were addressed with one or two left as in the attached image. We are near to the solution.
Please review and suggest.
thx
KV
Dear Mr.Sean,
Thanks for your valuable inputs. I could sort the RamfuncsLoadEnd error by replacing it with RamfuncsLoadSize. Cool.
reg volatile struct PIE_VECT_TABLE PieVectTable : - Followed the procedure suggested. it appears that its declared twice - line no.196 and line no.29 of PieVect.h.
Could you please review and suggest. Attached the image.
Thx,
KV
KV,
With regards to PIE_VECT_TABLE in DSP2803x_PieVect.h - it's not declared twice in that header file. What's happening there is the definition of the struct on line 29 and then the subsequent declaration of a PIE_VECT_TABLE struct named PieVectTable on line 196. This convention is no problem for the compiler and isn't the cause of the error you're experiencing. The error you're seeing is related to the declaration in DSP2803x_GlobalVariableDefs.c, I'd need to see what's happening on line 314 of that as well. You're sure that there isn't two places where PieVectTable is being declared (i.e extern volatile struct PIE_VECT_TABLE PieVectTable;)?
Sean
KV,
The code should be able to compile and load even with warnings. Please try to run the code from FLASH regardless of the warnings.
Sean
Hi Sean,
Thanks for your support and apologise for the delay.
I was reviewing Example_2803xFlash.c and they have mentioned
Steps that were taken to convert the ePWM example from RAM to Flash execution:
1) - Change the linker cmd file to reflect the flash memory map.
2) - Make sure any initialized sections are mapped to Flash. In SDFlash utility this can be checked by the View->Coff/Hex status utility. Any section marked as "load" should be allocated to Flash.
3) - Make sure there is a branch instruction from the entry to Flash at 0x3F7FF6 to the beginning of code execution. This example uses the DSP0x_CodeStartBranch.asm file to accomplish this.
4) - Set boot mode Jumpers to "boot to Flash"
5) - For best performance from the flash, modify the waitstates and enable the flash pipeline as shown in this example.
Note: any code that manipulates the flash waitstate and pipeline control must be run from RAM. Thus these functions are located in their own memory section called ramfuncs.
I think we have taken care of step 1 and how about steps 2,3 & 5 and the note. Could you please review and suggest if our code needs any further changes.
Please do the needful.
thx
KV
Dear Mr.Sean,
Thanks for your support and you helped me progress till now. Today I could successfully flash the code even with warnings.
Tried to run the code but IsrTicker is not active.
Attached the PPT too for your reference. Could you please advice.