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.

Compiler C2800 6.10, wrong const initialization

Other Parts Discussed in Thread: TMS320F2809

Code composer studion 5.2.1, compiler version 6.1, TMS320F2809 

I have a structure

typedef struct // 4 MAU
{
 UInt32 fSerial : 20;
 UInt32 fMonth : 4; 
 UInt32 fYear : 7;
 UInt32 fRes1 : 1;
 UInt32 fJobNum : 24;
 UInt32 fManu : 7; 
 UInt32 fRes2 : 1;
} TSerialNum;

 and a constant

const TSerialNum cSerialNum =
{
 0x54322, 
 8, 
 12,
 0, 
 0x4321, 
 1, 
 0 
};  

 I would expect a 64-bit value in memory as 0x0100'4321'0C85'4322.

But the " cSerialNum " after compilation is 0x4321'00C8'0005'4322, what is definitely wrong. What's the matter? I can't figure out where the problem is.

Thanks for any help.

Walter