Forum: Mikrocontroller und Digitale Elektronik Fertige C-Source mit welchem Compiler erstellt?


von Sebastian Schmidt (Gast)


Angehängte Dateien:

Lesenswert?

Hallo erstmal,

ich habe auf den Seiten der Cornell Universität ein Projekt gefunden
und habe mich darangemacht dies nachzubauen. Den angefügten Source-Code
habe ich ebenfalls von dieser Seite geladen. Nun habe ich schon einige
C-Compiler ausprobiert, aber ich komme einfach nicht darauf mit welchen
dieser Code geschrieben wurde und für mich sind es einfach zu viele
Fehlermeldungen, die beim Compilieren auftreten, als dass ich sie
korrigieren könnte. Da der Code aber fehlerfrei sein müßte, da das
Projekt ja mit diesem Code verwirklicht worden ist, wollte ich nun
fragen, ob nicht jemand von euch mir einen Tip geben könnte oder mir
die  Source compilieren könnte?

freundlichst Sebastian

von Martin (Gast)


Lesenswert?

Also C ist das auf jeden Fall nicht ?
Pascal ???? C# ?????
Aber C nicht.

von Martin (Gast)


Lesenswert?

Oh. Entschuldige
Das ist doch C.
Ich habe das:
#define begin {
#define end }
übersehen.

von Benedikt (Gast)


Lesenswert?

Ersetze begin durch {
und end durch }
und das Programm sollte laufen.

von A.K. (Gast)


Lesenswert?

Je nach Compiler müssen noch die Interrupt-Routinen angepasst werden. Da
pflegt jeder seine eigene inkompatible Definitionstechnik.

von Sebastian Schmidt (Gast)


Lesenswert?

Der icc-Compiler versteht die begin...end Anweisung, da sie ja am Beginn
definiert wurden. Das Problem besteht eher in der Delay.h, diese ist bei
icc nicht verfügbar bei avr-gcc ist diese zwar verfügbar, aber dieser
stört sich an sonstigen Dingen. Woraus ich schließe, dass es nicht mit
avr-gcc geschrieben wurde. Wie komme ich jetzt an die Delay.h? An der
Uni bekomme ich wahrscheinlich auch keine Auskünfte mehr, da dieses
Projekt schon 3 Jahre alt ist.

Danke für die Antworten bisher!

freundlichst Sebastian

von mthomas (Gast)


Lesenswert?

Der Code duerfte fuer Codevision AVR geschrieben sein (Registerzugriffe,
ISR-Deklaration, Inline-Assembler). Delay-Funktionen fuer avr-gcc gibt
es in der avr-libc (max. Wartezeit in Abh. von Taktfreq. beachten,
evtl. mehrfach mit kurzen Wartezeiten aufrufen). Den Rest auf avr-gcc
anzupassen, ist auch kein Hexenwerk:
- interrupt[...]... -> SIGNAL(...)
- Reg.Bit= -> Reg |= (.. bzw. Reg&= ~(..
- #asm -> asm volatile("...

Martin

von Sebastian Schmidt (Gast)


Lesenswert?

Vielen Dank, mthomas.

Ich werde es dann mal CV-AVR versuchen mal sehen ob die Demo ausreicht,
ansonsten versuche ich den Code anzupassen,
danke nochmal für deinen Tip.

freundlichst Sebastian

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.