Hallo, ich bin gerade dabei, mich von Arduino auf die direkte µC-Programmierung umzugewöhnen. Stehe jetzt aber vor zwei Rätseln. (1) Ich möchte gerne die I2C-Lib von Peter Fleury nutzen. Das hat soweit auch gut funktioniert. Nur frage ich mich, ob es ein Verzeichnis ähnlich dem Arduino Library-Ordner gibt, indem ich das ganze einfügen kann und nur noch mit #include <i2cmaster.h> aufrufen brauche (oder müssen die einzelnen Dateien in unterschiedliche Ordner; geht das überhaupt?). (2) Beim Arduino gab es einen Serial Monitor. Das war in sofern nützlich, dass man sich schnell Werte ausgeben konnte. Das ganze lief über TX und RX und wenn ich das richtig verstanden habe, ist hier das Äquivalent dazu der Uart. In dessen Register schreibt man die Daten und diese werden dann gesendet. Umsetzen würde ich das mit einem FTDI-Adapter, den ich noch vom Arduino habe. Nun fehlt mir aber noch etwas am PC, womit ich mir die ankommenden Daten ansehen kann. Gibt es im AVR-Studio etwas wie einen Monitor wie beim Arduino; konnte leider nichts passendes finden? Viele Grüße Dominik
Vielen Dank schonmal! Werde ich mal mit rumspielen. :) Noch jemand einen Tipp zu (1)? Das wäre perfekt. :) Grüße und Danke nochmal! Dominik
Du kannst die c- und h-Dateien in beliebige Ordner legen. Wichtig sind zwei Dinge: 1. c-Dateien musst Du in das Projekt einfügen, damit sie kompiliert werden. Das geht im Solution Explorer mit Rechtsklick -> Add -> Existing Item. Dort die c-Datei auswählen. Wenn Du auf "Add" klickst, wird die Datei in das aktuelle Projektverzeichnis kopiert. Wenn Du auf "Add as Link" klickst, bleibt sie dagegen wo sie ist, und es wird nur eine Verknüpfung erstellt. Letzteres ist sinnvoll, wenn Du die gleiche c-Datei in mehreren Projekten benutzen willst. Wenn Du an der c-Datei etwas änderst, gelten die Änderungen in allen Projekten. 2. h-Dateien müssen in einem Ordner liegen, in dem der Compiler nach Include-Dateien sucht. Diese Ordner kannst Du in den Projekteinstellungen unter Toolchain -> C Compiler -> Directories einstellen. Wenn Du also einen Ordner mit gemeinsam genutzten Dateien hast, fügst Du ihn da ein.
Ok, das hilft mir schonmal sehr weiter, allerdings bei einer anderen Lib. :) Die Lib von Peter Fleury für I2C besteht aus: - i2cmaster.h - i2cmaster.s - makefile - makefile.i2cmaster - makefile.twimaster - test_i2cmaster.c - twimaster.c Wohin kommt denn z.B. die i2cmaster.s? In der i2cmaster.s steht anscheinend so ziemlich das gleich drin, wie in der twimaster.c (nur halt in Assembler). Kann doch nicht sein, dass ich schon an so etwas scheitere? :( Viele Grüße Dominik
Hilf Dir doch mal selber und benutze mal die Forensuche, eine Suchmaschine oder lese Dir mal die Anleitung zum AVR Studio durch :-) Es gibt auch Application Note von Atmel bzgl. des Mischens von C und ASM-Dateien. Dann weist du auch, was man mit i2cmaster.s anstellt ;-)
Funktionieren tut es ja. Nur bisher habe ich die Dateien in meinen Projektordner gelegt und den Pfad zur i2cmaster.h angepasst; twimaster.c habe ich gelinkt, da der Atmega328p ja hardwareseitig I2C beherrscht. Meine Frage war nun, ob es auch einfacher geht. Also ob ich die Dateien nun in einen Ordnen legen kann, um einfach aus jedem Projekt heraus i2cmaster.h aufrufen zu können. Muss ich (sofern hardwareseitig vorhanden) die twimaster.c immer inkludieren? Grüße Dominik
Dominik Gebhardt schrieb: > Funktionieren tut es ja. Nur bisher habe ich die Dateien in meinen > Projektordner gelegt und den Pfad zur i2cmaster.h angepasst; twimaster.c > habe ich gelinkt, da der Atmega328p ja hardwareseitig I2C beherrscht. > > Meine Frage war nun, ob es auch einfacher geht. Also ob ich die Dateien > nun in einen Ordnen legen kann, um einfach aus jedem Projekt heraus > i2cmaster.h aufrufen zu können. > Muss ich (sofern hardwareseitig vorhanden) die twimaster.c immer > inkludieren? > > Grüße > > Dominik Du hast aber nicht gefragt, ob es auch einfacher geht, sondern wo denn die i2cmaster.s hinkäme. Wie man nun den Quellkode organisiert hat jeder seinen eigenen Stil. Wenn es um eine Treibermodul handelt könnte man z.B. Quellkode-Unterverzeichnis anlegen und dort die dateien ablegen, oder vielleicht in diesem Unterverzeichnis ein weiteres Verzeichnis mit dem Namen TWI anlegen und darin die dateien ablegen oder.... Üblicherweise füge ich nur das dem Projekt hinzu, was ich auch wirklich benötige.
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.