Forum: PC-Programmierung Raspberry PI UART


von Donni D. (Gast)


Lesenswert?

Ich bräuchte mal eure Hilfe,
Ich probiere über den UART des Raspberrys etwas an den Mikrocontroller 
(Arduino UNO) zu übertragen. Zur Übertragung benutze ich den Befehl:
echo 20 >> dev/ttyAMA0

Dann bekomme ich zuerst eine 2, dann eine 0 gesendet. Wie kann ich nun 
die 20 als Byte senden? Ich will nicht die einzelnen Zeichen senden. Ich 
möchte die Zahlen 0-114 senden, nur so einfach wie ich es mir gedacht 
habe geht es leider nicht..

Liebe Grüße

von Falk S. (falkschilling)


Lesenswert?

echo -e "\x14" >> /dev/ttyAMA0

: Bearbeitet durch User
von Donni D. (Gast)


Lesenswert?

Vielen dank schonmal dafür, das funktioniert schonmal.
Nun kommen weitere Probleme auf..

Ich habe mir ein script geschriben, was wie folgt aussieht:
echo -e "\x$1" >> /dev/ttyAMA0
Wenn ich dieses per Terminal aufrufe, so: ./script.sh FF, bekomme ich FF 
gesendet. Wenn ich allerdings per Java 
Runtime.getRuntime.exec("/script.sh A") ausführe bekomme ich 4 Werte 
gesendet und zwar: 2D, 20, 78, 0A. Das Letzte enspricht immer dem was 
ich senden möchte. Wenn ich z.B. FF sende, erhalte ich am ende 
allerdings nur ein F.

Hat wer eine Ahnung woran das liegen könnte?

Liebe Grüße.

von Kindergärtner (Gast)


Lesenswert?

Warum machst du es so umständlich (und ineffizient), unter Java ein 
externes Programm für den Zugriff zu verwenden?! Nimm doch RXTX ( 
http://rxtx.qbang.org/wiki/index.php/Main_Page ) oder einfach 
FileStreams auf /dev/ttyACM0...

von Donni D. (Gast)


Lesenswert?

Peinlich... Natürlich, so ist es viel einfacher, Dankeschön! :)

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.