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.

Build Error

Other Parts Discussed in Thread: MOTORWARE

Hi;

I am trying to add files from the "sprc832" software package into proj_lab04 in order to set up two nested interrupts inside the main ISR

(basically, I have two different motor control implementations written in an ISR- developed in different projects- each. I want one of the nested ISR's to run depending on conditions set in the background loop. I believe nesting the two ISRs will be much easier? am I current?)

The files from the sprc832 package are located in root directory C:\tidcs\c8\DSP2802x

When adding the files, I copied them directly into the project folder in the workspace, and added the #include files;

DSP2802x_Device.h and DSP2802x_Examples.h in the proj_lab04.c file

However, I keep getting the following error:


**** Build of configuration Flash for project proj_lab04 ****

"C:\\ti\\ccsv6\\utils\\bin\\gmake" -k all
'Building file: C:/ti/motorware/motorware_1_01_00_16/sw/solutions/instaspin_foc/src/proj_lab04.c'
'Invoking: C2000 Compiler'
"C:/ti/ccsv6/tools/compiler/ti-cgt-c2000_6.4.6/bin/cl2000" -v28 -ml -mt -O2 --include_path="C:/tidcs/c28/DSP2802x/v126/DSP2802x_common/include" --include_path="C:/tidcs/c28/DSP2802x/v126/DSP2802x_common/source" --include_path="C:/ti/motorware/motorware_1_01_00_16/sw/modules/hal/boards/boostxldrv8301_revB/f28x/f2802x/src/" --include_path="C:/tidcs/c28/DSP2802x/v126/DSP2802x_common/cmd" --include_path="C:/tidcs/c28/DSP2802x/v126/DSP2802x_headers/include" --include_path="C:/ti/ccsv6/tools/compiler/ti-cgt-c2000_6.4.6/include" --include_path="C:/ti/motorware/motorware_1_01_00_16/sw/solutions/instaspin_foc/boards/boostxldrv8301_revB/f28x/f2802xF/src" --include_path="C:/ti/motorware/motorware_1_01_00_16" -g --define=FLASH --define=FAST_ROM_V1p7 --define=F2802xF --diag_warning=225 --display_error_number --asm_listing --preproc_with_compile --preproc_dependency="proj_lab04.pp"  "C:/ti/motorware/motorware_1_01_00_16/sw/solutions/instaspin_foc/src/proj_lab04.c"
"C:/ti/motorware/motorware_1_01_00_16/sw/solutions/instaspin_foc/src/proj_lab04.c", line 110: error #148: declaration is incompatible with "Uint16 RamfuncsLoadStart" (declared at line 88 of "C:\tidcs\c28\DSP2802x\v126\DSP2802x_common\include\DSP2802x_GlobalPrototypes.h")
"C:/ti/motorware/motorware_1_01_00_16/sw/solutions/instaspin_foc/src/proj_lab04.c", line 110: error #148: declaration is incompatible with "Uint16 RamfuncsLoadEnd" (declared at line 89 of "C:\tidcs\c28\DSP2802x\v126\DSP2802x_common\include\DSP2802x_GlobalPrototypes.h")
"C:/ti/motorware/motorware_1_01_00_16/sw/solutions/instaspin_foc/src/proj_lab04.c", line 110: error #148: declaration is incompatible with "Uint16 RamfuncsRunStart" (declared at line 90 of "C:\tidcs\c28\DSP2802x\v126\DSP2802x_common\include\DSP2802x_GlobalPrototypes.h")
3 errors detected in the compilation of "C:/ti/motorware/motorware_1_01_00_16/sw/solutions/instaspin_foc/src/proj_lab04.c".

>> Compilation failure
gmake: *** [proj_lab04.obj] Error 1
gmake: Target `all' not remade because of errors.

**** Build Finished ****

The description of the problem states the following:

"#148 Declaration is incompatible with "Uint16 RamfuncsLoadEnd"

"#148 Declaration is incompatible with "Uint16 RamfuncsLoadStart"

"#148 Declaration is incompatible with "Uint16 RamfuncsRunStart"

Why am I getting this error, and How do I fix it?

{It must be pointed out;

for some reason, in my DSP2802x_Device.h file, the target hardware is set to be;

#define   DSP28_28027PT   TARGET

I am indeed using the f28027f Launchpad, so I am not sure why there is some variance in the definition, perhaps this is the problem?}

Also, which files am I actually supposed to modify in order set up the ISR's and then to link the PIEIER to the conditions set in the background loop in proj_lab04.c?

I am a little confused on this point, because the base project has a main interrupt without including the DSP2802x files, so perhaps there could be a way of achieving my goal without using these files

Thank you

  • Morikeh Daramy said:
    "C:/ti/motorware/motorware_1_01_00_16/sw/solutions/instaspin_foc/src/proj_lab04.c", line 110: error #148: declaration is incompatible with "Uint16 RamfuncsLoadStart" (declared at line 88 of "C:\tidcs\c28\DSP2802x\v126\DSP2802x_common\include\DSP2802x_GlobalPrototypes.h")

    As the error says, the declaration of RamfuncsLoadStart (and others) in proj_lab04.c is not compatible with its declaration in DSP2802x_GlobalPrototypes.h. You can open up the two files and compare the declarations to confirm.

    The source of the issue is that the package sprc832 is very old and the header file in it is not compatible with the newer examples. If you install ControlSuite instead you can get the latest header/support files for F2802x devices, and those should be compatible with the Motorware code.

    Morikeh Daramy said:

    Also, which files am I actually supposed to modify in order set up the ISR's and then to link the PIEIER to the conditions set in the background loop in proj_lab04.c?

    I am a little confused on this point, because the base project has a main interrupt without including the DSP2802x files, so perhaps there could be a way of achieving my goal without using these files

    Please post this question to the C2000 forum as the experts there should be able to provide better guidance with this.