Hallo, ich wollte eine Funktion von mir in eine externe Datei auslagern, da ich diese noch in anderen Funktionen brauche. Das Problem ist dabei nur, das wenn ich über die externe Datei starte, mir der Compiler eine Fehlermeldung ausgibt, die durch die Lib von Peter Fleury verursacht wird. Habe ich diese Funktion allerdings 1:1 in der eigentlichen Datei, kommt keine Fehlermeldung. Der Compiler meckert das der SRAM zu klein für die Buffer wäre, dies wird überprüft indem ein Wert von ENDRAM abgezogen wird. Setzt man diesen Wert allerdings manuell auf den Wert des AT90CAN128, so kommt keine Meldung es läuft auch normal. Im Anhang noch die Datein Danke schon mal im Vorraus mfg
>Danke schon mal im Vorraus
Erspare uns doch die Suche:
Welche Funktion hast/willst Du von welcher Datei in welche Datei
auslagern...?
Der Fehler sitzt vor dem Computer. Ich hab mit jtzt tatsächlich die Mühe gemacht, deine zip-Datei auszupacken, kann darin aber weder ENDRAM noch buffer finden. Was genau ist also jtezt die Frage, und wie genau stellst du dir vor, daß das jemand beantworten kann (oder will)? Oliver
Entschuldigung für die Ungenauigkeit Also die Funktion "uart_get_line" will ich auslagern, über die Datei "uart_get_l" Diese arbeitet ja eigentlich zu 90% mit der Funktion aus der Lib von Peter Fleury Diese Lib überprüft ob der TX und der TX Buffer auch in den SRAM passen, dabei kommt die Fehlermeldung, allerdings nur wenn die Funktion ausgelagert ist, wenn ich die Funktion "uart_get_line" in die "visuschni.c" schreibe, kompiliert er fehlerfrei. Ich benutze AVRStudio und der µC ist ein "AT90CAN128"
Dann nochmal ganz deutlich: Häng den Code hier an, bei dem der Fehler auftritt. Mit allen Dateien, compilierbar, mit Projektdatei. Oder such deinen Fehler selber. Oliver
Naja hier das komplette Projekt, aber compilierbar ist es ja eben nicht
Nun ja, du solltest dir angewöhnen, JEDES c-File für einen AVR mit der kleine Zeile
1 | include <avr/io.h> |
zu beginnen. Damit erst werden alle Konstanten auf die AVR-Spezifischen Werte gesetzt. Bei dir ist die Reihenfolge der includes falsch. Oliver
Ok ich hab jetzt ein wenig mit der Reihenfolge der includes rumgespielt, aber ich hab ehrlich gesagt keine gefunden, in der der Fehler nicht mehr auftritt Welche Reihenfolge ist denn die richtige? Und was sind die "Ranghöchsten" Libs? GIbt es da überhaupt so was wie eine Rangfolge? Falls ja, kann man diese einsehen?
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.