Forum: Compiler & IDEs Portierung IAR nach MSPGCC


von diplomand (Gast)


Lesenswert?

Hallo,

für meine Diplomarbeit arbeite ich im Moment mit dem eZ430-RF2500 DevKit 
von TI und muss jetzt die Sourcen von TI's Simpliciti Protokoll von IAR 
zum MSPGCC portieren. Hat das zufällig schonmal jemand gemacht und kann 
mir ein paar Tipps geben, damit ich nicht in jede erdenkliche Falle 
reintrete? Vielen Dank schonmal im Voraus.

Gruß,
diplomand

von Christian R. (supachris)


Lesenswert?

Eigentlich sind nur die Deklarationen der ISRs anzupassen, alle anderen 
Header-Files sind gleich.
Wenn allerdings eine vorkompilierte lib dabei ist, wird´s schwierig.

Für Kompatibilität IAR und GCC:
1
#ifndef __ICC430__
2
#include <signal.h>
3
#endif

und bei den ISRs dann:
1
#ifdef __ICC430__                                     //IAR Compiler
2
#pragma vector=TIMERA1_VECTOR
3
__interrupt void TimerA1_ISR(void){
4
#else
5
interrupt (TIMERA1_VECTOR) TimerA1_ISR(void)          //GCC Compiler
6
{
7
#endif
8
9
...ISR...
10
}

von diplomand (Gast)


Lesenswert?

Danke, das war schomal ein guter Tipp! Musste nur noch ein paar Sachen 
anpassen, weil IAR andere Funktionen zum sichern des SR hat. Inzwischen 
kompiliert sogar der ganze Code, konnte bis jetzt nur noch nicht testen, 
ob's läuft, weil ich die Hardware gerade nicht da habe.

dipl

von Christian R. (supachris)


Lesenswert?

Aufpassen auch, falls im Programm eine printf() oder sprintf() Ausgabe 
drin ist, in der Float-Zahlen ausgegeben werden sollen. Das ist in der 
stdlib im MSPGCC nicht implementiert. Rechnen mit float geht aber.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.