Tool zum senden vom Commands via Com Port

Moderator
TRJ schrieb:
> Mit einem Console Tool kann ich ja nur Zeichen schicken, wenn ich aber
> etwas wie 0x04 senden möchte - was nehme ich da?

Man muss nicht für jede Kleinigkeit ein spezielles Programm installieren
oder gar selber schreiben. Für einfache Probleme gibt es meistens auch
einfache Lösungen mit bestehenden Tools.

Der Echo-Befehl (sowohl der aus der Bash als auch der aus den Coreutils)
kann auch Strings mit den aus C bekannten Escape-Sequenzen ausgeben.

Beispiel:

1
echo -en "\x00\x01\x02\x03\x04\xff" >/dev/ttyS0

Für häufig wiederkehrende Bytefolgen kannst du Shell-Variablen
verwenden:

1
B1="\x0A\x0B\x0C\x0D\x0E\x0F"
2
B2="\xC0\xDE\xAF\xFE\xEB\xBE\xCA\xFE"
3
echo -en "$B1\xff\xff$B2" >/dev/ttyS0
4
# --> sendet 0A 0B 0C 0D 0E 0F FF FF C0 DE AF FE EB BE CA FE
Persönliche Seite
STK500-Besitzer schrieb:
> Etwas anders dürfte es auch in der Windows "Shell" gehen:

Sicher, aber das ist mit Steuerzeichen so nicht umsetzbar.

Die müssen mit einem geeigneten Editor in eine Datei geschrieben werden, 
die dann mit copy /b auf die Schnittstelle kopiert wird.

Arges Gefrickel.

Bei beiden Vorgehensweisen sieht man nicht die Reaktion des Gerätes, 
insofern ist so ein Schnittstellentester à la bray/hterm doch eindeutig 
zu bevorzugen, auch wenn es der Linux-Philosophie (mache alles mit der 
shell) widerspricht.
Moderator
Draco schrieb:
> Yalu... nicht jeder, ich sage mal sogar der kleinste Teil, nutzt Linux.

Das funktioniert auch unter Mac OS X, wenn man den Device-Namen der
Schnittstelle entsprechend ändert, und sogar unter Windows (wohlbemerkt
ohne MSYS, Cygwin und Konsorten), wenn man mit wenigen Klicks das
"Windows Subsystem for Linux" aktiviert, das offizieller Bestandteil der
neuesten Windows-Version ist:

  https://msdn.microsoft.com/commandline/wsl/about
  https://msdn.microsoft.com/en-us/commandline/wsl/install_guide

Mein Vorschlag ist also mitnichten nur für Linux-User von Bedeutung.

Rufus Τ. F. schrieb:
> Bei beiden Vorgehensweisen sieht man nicht die Reaktion des Gerätes,
> insofern ist so ein Schnittstellentester à la bray/hterm doch eindeutig
> zu bevorzugen

Ja, das ist natürlich ein Argument für ein hex-fähiges Terminalprogramm.
Ich hatte allerdings nicht den Eindruck, dass der TE auch Daten von der
Schnittstelle empfangen möchte.
Gast
Ich kann mich ja morgen mal ransetzen und ein ganz simples HEX 
Terminalprogram schreiben, dürfte ja in zwei/drei Stunden umsetzbar 
sein. Ich selbst nutze immer HTERM - aber ich gebe da auch ganz offen 
zu. Das ist für ne Terminalausgabe / Umsetzung schon nen bissle Overkill 
mitunter. Genauso wie Putty.
Gast
STK500-Besitzer schrieb:
> Etwas anders dürfte es auch in der Windows "Shell" gehen:
> echo BLABLA>COM1:
Rufus Τ. F. schrieb:
> Sicher, aber das ist mit Steuerzeichen so nicht umsetzbar.
>
> Die müssen mit einem geeigneten Editor in eine Datei geschrieben werden,
> die dann mit copy /b auf die Schnittstelle kopiert wird.

Dir ist Alt+Ziffernblock bekannt?
Die Alt-Taste halten und am Ziffenblock dreistellig dezimal eingeben 
erzeugt jedes beliebige Zeichen.
Gast
Draco schrieb:
> Yalu... nicht jeder, ich sage mal sogar der kleinste Teil, nutzt Linux.

Und f. Alle Windowsknechte gibt's CygWin zum installieren: somit gelten 
solche Hinweise als universell, aka portabel.
(installieren ist ja die Lieblingstätigkeit mit Windows...)
Moderator
Manfred schrieb:
> Die Alt-Taste halten und am Ziffenblock dreistellig dezimal eingeben
> erzeugt jedes beliebige Zeichen.

Das schon, nur bringt das bei Steuerzeichen nicht viel, weil viele davon
(Backspace, Carriage Return, Tab usw.) bereits bei der Eingabe gesondert
interpretiert werden und damit nicht an Kommandos wie echo als Argument
übergeben werden können.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.