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.

CCS/TMS320F280049C: Name space conflict when trying to add Driverlib and Bitfield support to the same project

Part Number: TMS320F280049C
Other Parts Discussed in Thread: C2000WARE

Tool/software: Code Composer Studio

Hi,

I'm in the process of setting up a new project and am following the F28004x Firmware Development Package User's Guide.  Section 2.3 states that Driverlib and Bitfield libs are "...implemented to be compatible together within the same user application."

I followed the instructions for "Adding Driverlib Support" and "Adding Bitfield Support" to my project.  (Which was previously compiling successfully with only driverlib support)

Afterwards, when I tried to build the project I get the following errors:


subdir_rules.mk:23: recipe for target 'main.obj' failed
"C:\ti\C2000Ware_1_00_06_00_Software\device_support\f28004x\headers\include\f28004x_lin.h", line 236: error #41: expected an identifier
"C:\ti\C2000Ware_1_00_06_00_Software\device_support\f28004x\headers\include\f28004x_lin.h", line 236: error #80: expected a type specifier
"C:\ti\C2000Ware_1_00_06_00_Software\device_support\f28004x\headers\include\f28004x_lin.h", line 236: error #170: a function type is not allowed here

Line 236 in ...\f28004x_lin.h is defining a bitfield as the following:

    bp_16 IDLE:1;                      // 2 SCI receiver in idle state (SCI compatible mode)

The problem appears to be that IDLE is also being defined in ...\driverlib\f28004x\driverlib\cpu.h as:

#ifndef IDLE
#define IDLE __asm(" IDLE")
#endif


Any suggestions?

Thanks,

Isaac

  • Isaac

    Thanks for bringing this to our attention. I'll file a bug.
    The easiest solution to rename one of the IDLEs. Probably the one in f28004x_lin.h is what I would change to LIN_IDLE or whatever you want. If you run any LIN example code, you'll just need to make sure to update the reference.

    Best regards
    Chris