EmbeddedRelated.com
Forums

Code Composer verse IAR

Started by quaratie May 7, 2008
Quick question for anyone familiar with CCE

I am trying to migrate from IAR to CCE

Does Code Composer assembler support the ASEGN Named relocatable
segment directive.

I cannot seem to find an equivalent to the IAR ASEGN directive in
the documentation.

I am converting an IAR to CCE assembly program but an stuck on
converting this IAR

ASEGN RESET: CODE, 0xFFFE
DW Reset

to CCE.

Thanks.

Beginning Microcontrollers with the MSP430

Why? Even TI believes that the IAR product is more important. The new
version of CCE intentionally breaks its compatibility with its own
syntax and examples and leaves users to discover this for themselves by
recompiling clean projects and finding out that they no longer compile.
They intentionally commented out all of the CCE interrupt syntax in the
header files. I say intentionally because there is mention of it buried
deeply in the FET manual. This stuff doesn't get into print without at
least a couple of sign offs and it doesn't get consistently done to all
of the header files without someone noticing. If it was not intentional
then I am even more concerned..

Frank

quaratie wrote:
>
> Quick question for anyone familiar with CCE
>
> I am trying to migrate from IAR to CCE
>
> Does Code Composer assembler support the ASEGN Named relocatable
> segment directive.
>
> I cannot seem to find an equivalent to the IAR ASEGN directive in
> the documentation.
>
> I am converting an IAR to CCE assembly program but an stuck on
> converting this IAR
>
> ASEGN RESET: CODE, 0xFFFE
> DW Reset
>
> to CCE.
>
> Thanks.
>
>

slau157a The FET user guide provides information on migration of IAR to
CCE. But, this is for the old version of CCE. From the comments, it seems
the new version is quite different so the instructions in SLAU157.pdf may be
wrong.
AA
-----Original Message-----
From: m... [mailto:m...]On Behalf Of
quaratie
Sent: Wednesday, May 07, 2008 5:17 AM
To: m...
Subject: [msp430] Code Composer verse IAR
Quick question for anyone familiar with CCE

I am trying to migrate from IAR to CCE

Does Code Composer assembler support the ASEGN Named relocatable
segment directive.

I cannot seem to find an equivalent to the IAR ASEGN directive in
the documentation.

I am converting an IAR to CCE assembly program but an stuck on
converting this IAR

ASEGN RESET: CODE, 0xFFFE
DW Reset

to CCE.

Thanks.


Alan,

The new version of slau157 has the correct information if you deeply
enough, section 2.1.3. It is not obvious. They are up to version f now

slau157f

The uncommenting of CCE interrupt definitions in the header file works.
I have not yet received a reply about any gotcha's in leaving both sets
of definitions in. I have not encountered any as yet.

Frank

Alan Adkins wrote:
>
> slau157a The FET user guide provides information on migration of IAR to
> CCE. But, this is for the old version of CCE. From the comments, it seems
> the new version is quite different so the instructions in SLAU157.pdf
> may be
> wrong.
> AA
> -----Original Message-----
> From: m...
> [mailto:m... ]On
> Behalf Of
> quaratie
> Sent: Wednesday, May 07, 2008 5:17 AM
> To: m...
> Subject: [msp430] Code Composer verse IAR
>
> Quick question for anyone familiar with CCE
>
> I am trying to migrate from IAR to CCE
>
> Does Code Composer assembler support the ASEGN Named relocatable
> segment directive.
>
> I cannot seem to find an equivalent to the IAR ASEGN directive in
> the documentation.
>
> I am converting an IAR to CCE assembly program but an stuck on
> converting this IAR
>
> ASEGN RESET: CODE, 0xFFFE
> DW Reset
>
> to CCE.
>
> Thanks.
>
>
>
>

I have yet to try CCE3, but at $500 and supposed compatibility w/
IAR, why wouldn't you??? I'll be sure to post a loveit/hateit
response soon, but I always have trouble getting over price!

-stein

--- In m..., Frank Chambers wrote:
>
> Alan,
>
> The new version of slau157 has the correct information if you
deeply
> enough, section 2.1.3. It is not obvious. They are up to version
f now
>
> slau157f The uncommenting of CCE interrupt definitions in the header file
works.
> I have not yet received a reply about any gotcha's in leaving both
sets
> of definitions in. I have not encountered any as yet.
>
> Frank
>
> Alan Adkins wrote:
> >
> > slau157a The FET user guide provides information on migration of
IAR to
> > CCE. But, this is for the old version of CCE. From the comments,
it seems
> > the new version is quite different so the instructions in
SLAU157.pdf
> > may be
> > wrong.
> > AA
> > -----Original Message-----
> > From: m...
> > [mailto:m... ]
On
> > Behalf Of
> > quaratie
> > Sent: Wednesday, May 07, 2008 5:17 AM
> > To: m...
> > Subject: [msp430] Code Composer verse IAR
> >
> > Quick question for anyone familiar with CCE
> >
> > I am trying to migrate from IAR to CCE
> >
> > Does Code Composer assembler support the ASEGN Named relocatable
> > segment directive.
> >
> > I cannot seem to find an equivalent to the IAR ASEGN directive in
> > the documentation.
> >
> > I am converting an IAR to CCE assembly program but an stuck on
> > converting this IAR
> >
> > ASEGN RESET: CODE, 0xFFFE
> > DW Reset
> >
> > to CCE.
> >
> > Thanks.
> >
> >
> >
>
Hi,

> I have yet to try CCE3, but at $500 and supposed compatibility w/
> IAR, why wouldn't you??? I'll be sure to post a loveit/hateit
> response soon, but I always have trouble getting over price!

Most of the time you get what you pay for. Heck, if you weighed software by
the kilobyte, CCE 3 would have a fantastic, headlining, world-beating
cent-per-purchased-byte bullet point.

--
Paul Curtis, Rowley Associates Ltd http://www.rowley.co.uk
CrossWorks for ARM, MSP430, AVR, MAXQ, and now Cortex-M3 processors

Hallo Frank,

----- Original Message -----
From: Frank Chambers
To: m...
Sent: Wednesday, May 07, 2008 2:27 PM
Subject: Re: [msp430] Code Composer verse IAR
>
> Alan,
>
> The new version of slau157 has the correct information if you deeply
> enough, section 2.1.3. It is not obvious. They are up to version f now
>
> slau157f The uncommenting of CCE interrupt definitions in the header file works.
> I have not yet received a reply about any gotcha's in leaving both sets
> of definitions in. I have not encountered any as yet.

the problem will appear when you use "wrong" name for interrupt, for example interrupt for ADC10 declared like:

// ADC10 interrupt service routine
#pragma vectorC10_VECTOR
__interrupt void ADC10_ISR(void)

leads to about 5 errors because ADC10_ISR() was interrupt routine in CCE 2.0
If you leave both definitions uncommented, you have to change interrupt name - for example:

// ADC10 interrupt service routine
#pragma vectorC10_VECTOR
__interrupt void ADC10(void)

works well.

Jarda

Jaromir,

Thanks

If that is the only 'gotcha' it is no problem as the function name
itself can be anything. I tend to use function names that embed the
processor ID in them to help sort them out, for example
F2619_ADC10_Interrupt()

Frank

Jaromir Subcik wrote:
>
> Hallo Frank,
>
> ----- Original Message -----
> From: Frank Chambers
> To: m...
> Sent: Wednesday, May 07, 2008 2:27 PM
> Subject: Re: [msp430] Code Composer verse IAR
> >
> > Alan,
> >
> > The new version of slau157 has the correct information if you deeply
> > enough, section 2.1.3. It is not obvious. They are up to version f now
> >
> > slau157f > >
> >
> > The uncommenting of CCE interrupt definitions in the header file works.
> > I have not yet received a reply about any gotcha's in leaving both sets
> > of definitions in. I have not encountered any as yet.
>
> the problem will appear when you use "wrong" name for interrupt, for
> example interrupt for ADC10 declared like:
>
> // ADC10 interrupt service routine
> #pragma vectorC10_VECTOR
> __interrupt void ADC10_ISR(void)
>
> leads to about 5 errors because ADC10_ISR() was interrupt routine in
> CCE 2.0
> If you leave both definitions uncommented, you have to change
> interrupt name - for example:
>
> // ADC10 interrupt service routine
> #pragma vectorC10_VECTOR
> __interrupt void ADC10(void)
>
> works well.
>
> Jarda
>
>
>
>

quaratie,
These section directives are not supported in CCE.
However, you can control section placement via the linker command file. If you open one of the default .cmd files, you will see something like this:
MEMORY
{

RESET : origin = 0xFFFE, length = 0x0002
}

SECTIONS
{

.reset : {} > RESET /* MSP430 RESET VECTOR */
}

and then you'd have something like this in your assembly code:;-------------------------------------------
; Interrupt Vectors
;-------.sect ".reset"; MSP430 RESET Vector.short RESETLABEL ;
SLAU131B.pdf has the detailed description of how this works. SLAU157f.pdf section D.3.3 has some other info on making those changes.
----- Original Message ----
From: quaratie
To: m...
Sent: Wednesday, May 7, 2008 6:17:20 AM
Subject: [msp430] Code Composer verse IAR
Quick question for anyone familiar with CCE

I am trying to migrate from IAR to CCE

Does Code Composer assembler support the ASEGN Named relocatable
segment directive.

I cannot seem to find an equivalent to the IAR ASEGN directive in
the documentation.

I am converting an IAR to CCE assembly program but an stuck on
converting this IAR

ASEGN RESET: CODE, 0xFFFE
DW Reset

to CCE.

Thanks.


____________________________________________________________________________________
Be a better friend, newshound, and
know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ