Hallo Forum-Gemeinde, wie man auch an meiner Neuanmeldung hier im Forum erahnen kann, ist dies mein erstes Projekt mit einem Foxboard, bzw. mein erstes eigenständiges Projekt mit einem Mikrocontroller überhaupt. Da ich recht fit in Informatik und der Programmierung mit JAVA bin, traue ich mir das trotzdem zu :) Ich habe also folgende Frage: Weiß jemand von Euch wie man unter einem Foxboard G20 mit installiertem JAVA JRE per JAVA Code den I2C Bus ansteuern (schreiben und lesen) kann bzw. wo ich ein Tutorial oder ähnliches zu dem Thema finden kann? Über jede helfende Antwort wäre ich sehr dankbar, da ich diesbezüglich leider etwas auf dem Schlauch stehe! Viele Grüße Florian
Hallo Florian, mit Java kannst Du ja nicht direkt auf die Hardware zugreifen. Deshalb schreibst Du diese Funktionalität in C und erzeugst Dir daraus einen Treiber (JNI). Die Frage ist jetzt nur: Hat jemand sowas für das Foxboard schon geschrieben, oder musst Du's selbst machen.
Hallo licht, danke für deine Antwort - das dachte ich mir schon irgendwie, dass ich mit JAVA nicht direkt Zugriff auf die Hardware bekommen kann. Alternativ zu JNI sollte aber auch JNA eine Möglichkeit sein - dann wäre nur die Frage wie der Native Aufruf unter Linux lauten würde. Damit wäre es ja dann schon eigentlich getan, denn die Auswertung würde ich ja dann in JAVA erledigen können... Kennt also vielleicht jemand die nativen Linux-Funktionen zum ansprechend des I2C-Bus bzw. zum ansprechen beliebiger Devices? Grüße Florian L
Als ergänzung zu Nils http://www.easysw.com/~mike/serial/serial.html#3_1 Hier ist sehr gut die iloct Klasse beschrieben, geht aber allgemein um Serial Kommunikation, ohne auf IC2 einzugehen.
Hallo liebe Leute,
nachdem ich mich nun nochmal intensiv hinter das Ganze geklemmt habe,
bin ich endlich auch fündig geworden. Mit der RXTX-Library lassen sich
unter Linux/Ubuntu die Serielle und die Parallele Schnittstelle
ansprechen. An einem virtuellen System hat es nach dem Kopieren der
Bibliotheken in die richtigen Ordner letztlich funktioniert - bzw. Java
konnte alles kompilieren. Via Schnittstelle ging nicht, da es unter
VirtualBox keine gibt. Also habe ich nun das FoxBoard in Betrieb
genommen und war dem Verzweifeln nahe. Laut Herstellerseite sollte ich
mit dem Befehl
>> apt-get install default-jre
das Standard-JRE installieren können - von wegen! Quittiert wurde mir
das mit dieser Meldung (siehe Anhang 1).
Also habe ich nach Einbindung der nötigen Repositories versucht das Sun
JRE zu installieren - hier fehlte letztlich jedoch immer das
sun-java6-bin package - allerdings beschrieben mehrere Online-Tutorials
genau meine Vorgehensweise, nur mit dem Unterschied, dass es dann
letztlich lief :{
Nächster Schritt: Donwload der BIN-Datei von java.com - die Installtion
hat leider auch nur Fehlermeldungen ergeben (siehe Anhang 2).
Mittlerweile bin ich leicht am Verzweifeln, daher meine Frage, hat
vielleicht jemand schonmal Java auf dem FoxBoard G20 mit Debian Lenny
zum laufen bekommen?
Viele Grüße
Florian L
Das binary heisst "jre-6u27-linux-i586.bin", d.h. es ist für x86
Prozessoren gedacht ("i586"). Auf Deinem Board ist aber ein ARM9 drauf.
Du wirst die RXTX Lib für Dein Board also selbst kompilieren müssen.
Auf http://rxtx.qbang.org/wiki/index.php/Installation_on_Linux gibts ne
Anleitung, versuchs mal damit.
MfG Mark
Sorry bin um die Uhrzeit wohl etwas neben der Spur^^, hab gedacht Du hättest Java schon installiert bekommen und bist jetzt an RXTX dran. Ändert aber trotzdem nichts daran, dass jre-6u27-linux-i586.bin auf Deinem Board nicht lauffächig ist. Generell ist Java auf so einem Board natürlich möglich, das Problem scheint mir in Deinem fall eher beim Server zu liegen, wo die Pakete heruntergeladen werden. Versuchs mal mit einem anderen Mirror, z.B. http://ftp.de.debian.org/debian anstatt http://ftp.it.debian.org/debian. Also in /etc/apt/sources.list ändern und danach apt-get update ausführen. Dann sollte man Java direkt durch "apt-get install default-jre" installieren können. Auf meinem Mini2440 hat das vor ein paar Monaten noch funktioniert. MfG Mark
Hallo Mork, vielen Dank für deine Antwort - ich werde das nachher (es ist ja doch schon etwas später^^) ausprobieren und mich dann wieder melden. Das RXTX werde ich aber wahrscheinlich trotzdem selbst kompilieren müssen - die .so-Bibliothek dürfte sonst wahrscheinlich ja nicht laufen, oder? Naja, wenn JAVA läuft werde ich das ja schnell merken^^ Danke nochmal! Viele Grüße Florian L
Vermutlich wäre es einfacher wenn du dir ein eigenes JNI schreibst, gibt es vom Hersteller des Boards keine Codebeispiele in C für den I2C?
Hallo, nachdem ich nun das Repository geändert habe und die Systemzeit mal richtig eingestellt habe (die war noch im Jar 1970...^^) ließ sich das Default JRE installieren - dahinter verbirgt sich übrigens GNU Java. Das RXTX-Paket ließ sich auch installieren, da anscheinend ein ARM-Package vorhanden ist. Das Foxboard hat meine ich einen arm5-Prozessor - auf jeden Fall sagt das Debian. Nachher werde ich dann mal testen, ob RXTX auch funktioniert - ansonsten muss ich wohl den Weg über JNI gehen... Danke nochmal an alle! Viele Grüße und einen schönen sonnigen Sonntag! Florian L
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.