Hallo, habe mir die Dateien von Herr Dannegger geladen, da ich mir eine RC5 Fernsteuerung bauen möchte. Er hat ja drei Dateien "RC5.C, Main.c und main.h" Main.c und Main.h werden verknüpft indem main.c folgende Codezeile hat #include "main.h". In main.h ist eine Variable namens "rc5_data". Wenn ich ejtzt kompiliere bekomme ich folgenden Fehler: ...c:20: undefined reference to `rc5_data' und das 3x mal. Ich denke mal das liegt an der Verlinkungen der Dateien, aber ich habe sie doch includet. Benutze AVR Studio 4.15 Build 623. Wäre schön wenn jemand helfen kann! Gruß Questionmark :)
Zeig mal den Code. Normalerweise sollte es eine RC5.h geben und keine main.h ... Du musst außerdem RC5.c in das Projekt einfügen, damit sie kompiliert und gelinkt wird.
Questionmark schrieb: > habe mir die Dateien von Herr Dannegger geladen, da ich mir eine RC5 > Fernsteuerung bauen möchte. Soviel ich weiß, ist das ein RC5-Dekoder von Peter Dannegger. Wenn Du aber eine Fernbedienung bauen willst, brauchst Du einen RC5-Encoder. Oder hast Du Dich einfach nur falsch ausgedrückt?
Ja ich meine einen Decoder, also ich sende mit einer Fernbedienung ein RC5-Codiertes Signal und meine IR-Diode gibt dieses Signal an den uC weiter. So einen Code benötige ich, kennt evtll. jemand eine Website wo man sich dieses downloaden kann? Wäre super :)
Was nutzt dir wein weiterer Decoder, du hast doch schon einen? Dein Problem ist ein ganz anderes: Du hast das Prokejt im AVR-Studio nicht richtig angelegt. Links oben gibt es in der Ansicht den Order Sources. Dort musst du alle zum Prjekt gehörogen .c-Dateien importieren. Rechte Maustaste hilft weiter ;) Dann klappt das auch mit dem linken ohne Fehlermeldung. Oliver
Hm wenn ich ein neues Projekt anlege, den Code in die main.c kopiere, ein neues Headerfile erstelle und als rc5.h abspeichere, die main.c kompiliere kommt ein Fehler das in der main.c Variablen undefiniert sind, verständlich sind ja nur in rc5.h deklariert das ist halt echt komisch warum der das nicht verlinkt...
Da fehlt keine Variable, da fehlt das define für F_CPU. Schua halt mal in rc5....h nach, ob das da definiert ist. Vermutlich nicht, denn das macht man üblicherweise in den Compileroptionen. Prokect->Optionen (oder Settings), da gibt es ein Eingabefeld für F_CPU. Oliver
Questionmark schrieb: > Hier ein Screen: > > http://www.bilderhoster.net/1/5639pmya.jpg.php Steht doch da: F_CPU undefined. Du musst schon Deinen µC-Takt angeben.
Achso, ja ich finde da leider keine Option mit F_CPU ... Ist das Programm von roboternetz für einen RC5 Decoder überhaupt brauchbar?(doof gefragT)
wenn ich das hier reinschreibe; #define F_CPU 4000000 bekomme ich: ....avr/lib/avr4/crtm8.o:(.init9+0x0): undefined reference to `main'
Questionmark schrieb: > ....avr/lib/avr4/crtm8.o:(.init9+0x0): undefined reference to `main' Dann schreib Dir doch eine Funktion main()! main() ist die C-Hauptfunktion, von der alles andere aus gestartet wird. Da rufst Du dann den RC5-Decoder auf und fertig. Da Du offenbar von C überhaupt keine Ahnung hast, wie willst Du es dann überhaupt schaffen, aus dem decodierten RC5-Kommando irgendetwas sinnvolles als Aktion auszuführen? Du brauchst erstmal: - ein C-Buch. Lerne C auf dem PC - AVR-Tutorial und AVR-GCC-Tutorial. Lerne, den AVR zu programmieren Fange mit einfachen Blink-Programmen an. In einem halben Jahr kannst Du dann nochmal wiederkommen. Vorher wird das nix.
Questionmark schrieb: > Ah lol, ich dachte die wäre schon drin, alles klar danke Und was hat dich jetzt daran gehindert, den Code den du hast durchzuscrollen und zu überprüfen, ob du richtig gedacht hast? Nur weil du wo anders Code zur Verfügung gestellt bekommst, entbindet dich das nicht davon * selber mitzudenken * C zu lernen bzw. zu können * mit deinen Tools wie AVR-Studio umgehen zu können. Es ist ein Trugschluss zu glauben, nur weil man heutzutage im Web alles downloaden kann, braucht man selber nichts mehr zu können bzw. zu lernen. Vor das 'Ich will' haben die Götter immer noch das 'Ich kann' gestellt. Und das hat sich seit 100000 Jahren nicht verändert und gilt heute noch genauso, wie es galt als wir von den Bäumen runterkamen.
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.