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 am working on the implementation of a power converter with digital compensantion by means of SFRA library. I found that the DPS workshop example code (fixed point for TMS320F28025) has pretty much everything I need to get started with the Library. However, I don't have the DPS workshop kit, instead I have the Piccolo F28025 Control Card with the Docking station.
Here's my situation: If I try to debug the original code, it works just fine in the sense that I can see expressions' values changing in real time without debbugging issues. I haven't tried to connect any circuit, though.
However, since I didn't want to overwrite the existing code, I created a copy of it (exported and imported it with another name). This has caused me a lot of issues because the project configuration was lost (building and linking sources, debug configuration, etc.).
After dealing with the mentioned issues I was finally able to run the code and start debugging. Now, it works just fine until it gets into "ADC_SOC_CNF(...)" function call. Specifically the problem is "DSP28x_usDelay(1000)" call inside ADC function.
When it tries to execute the call, something triggers the CPU to execute the assembly instruction "ESTOP", which apparently halts the CPU.
I noticed that there's another function called DELAY_US(A) inside of "DSP2803x_Examples.h" and that I had used for the DC Event trip with the comparator example code. So, I tried to include that header file into my project, but the compiler throws an error due to different definitions of symbols:
RamfuncsLoadStart;
RamfuncsLoadEnd;
RamfuncsRunStart;
inside "DSP2803x_GlobalPrototypes.h", which is included into "DSP2803x_Examples.h", and {...}-Main.c
I also noticed that most headers and .asm files included in the project were copied as simple files and aren't linked as they are in the original project.
So, I tried by erasing "DSP2803x_usDelay.asm" and adding it by hitting right-click on project > add files... > path > Link to files & and relative to PROJECT_LOC. However, nothing changed.
I am wondering what is it that its causing so much troubles if the codes are essentially the same. I think it has to do with the non-linked files.
I will really appreciate any help you all can bring me on this.
Regards
Are you trying to
It sounds like the linker command file is setup for the 2nd option (load to flash/run from RAM) but all of the pieces are not in place. In this case the delay function you mentioned would be loaded to flash and then the application would copy it to RAM at the start of the program. If this copy is not in place, then the CPU will go off into the weeds because the RAM is not initialized with the opcodes for the delay function.
You mention that the project configuration was lost. The project configuration probably setup a pre-defined variable that would pull in the code for "load to flash, copy to RAM" execution.
-Lori