Forum: PC-Programmierung Dateneingang über COM1 in .bat-Datei detektieren


von Meister E. (edson)


Lesenswert?

Hallo,

vielleicht kann mir jemand auf die Sprünge helfen. Ich möchte mit einer 
.bat-Datei den Datenaustausch zwischen einer uC-Schaltung und einem PC 
über den COM-Port organisieren. Die Ausgabe funktioniert bereits, jetzt 
frage ich mich wie ich in der .bat auf den Eingang von Daten reagieren 
kann/muss.

Eine Art Warteschleife oder sowas wäre ausreichend, da nach jeder 
Datenausgabe eine Antwort des uC-Systems erfolgen muss.

von edson (Gast)


Lesenswert?

ok, nochmal anders gefragt: Kann mir jemand sagen ob es möglich ist, in 
einer .bat-Datei auf eingehende Daten an COM1 zu warten?

von Karl H. (kbuchegg)


Lesenswert?

Theoretisch müsste ein Copy in der umgekehrten Richtung
das machen

copy com1: test.txt

dann muss aber ein EOF im Datenstrom daherkommen, damit
der copy auch wieder terminiert.

Ganz ehrlich: Ich denke du bist auf dem Holzweg. Sobald
du dann auch noch Auswertungen auf dieser Datei machen
musst, hast du die DOS Commandline in ihren Fähigkeiten
schon weitüberfordert. Vieles könnte man mit Hilfen wie
grep, sed oder wie die Stream-Editoren auch alle heissen
lösen. Aber spätestens dann, wenn in Abhängigkeit vom
Empfangenen irgendwelche komplexeren Entscheidungen zu
treffen sind, wird wohl an einer richtigen Programmier-
sprache kein Weg vorbei führen.

Mit ein bischen Übung klingt deine Problemstellung danach,
als ob man sie in Visual Basic in etwa einer halben Stunde
zusammklicken kann. Mit weniger Übung dauert es zwar länger
ist aber immer noch keine Raketentechnik.

von Meister E. (edson)


Lesenswert?

Karl heinz Buchegger wrote:
> Theoretisch müsste ein Copy in der umgekehrten Richtung
> das machen
>
> copy com1: test.txt
>
> dann muss aber ein EOF im Datenstrom daherkommen, damit
> der copy auch wieder terminiert.

Klingt logisch und leicht implementierbar, werde ich auf jeden Fall 
testen.

> Ganz ehrlich: Ich denke du bist auf dem Holzweg. Sobald
> du dann auch noch Auswertungen auf dieser Datei machen
> musst, hast du die DOS Commandline in ihren Fähigkeiten
> schon weitüberfordert.

Das Gefühl hatte ich ehrlich gesagt auch schon, jedoch sind keine 
komplexeren Aufgaben geplant. Die auszugebende Datei übergibt 
Zahlenstrings in drei Textzeilen an den uC, der wiederum eine 
dreizeilige Antwort in eine zweite Textdatei übergeben soll.

> Vieles könnte man mit Hilfen wie
> grep, sed oder wie die Stream-Editoren auch alle heissen
> lösen. Aber spätestens dann, wenn in Abhängigkeit vom
> Empfangenen irgendwelche komplexeren Entscheidungen zu
> treffen sind, wird wohl an einer richtigen Programmier-
> sprache kein Weg vorbei führen.

Bin da für alles offen, sofern die Entwicklungstools bezahlbar sind.

> Mit ein bischen Übung klingt deine Problemstellung danach,
> als ob man sie in Visual Basic in etwa einer halben Stunde
> zusammklicken kann.

Glaube ich dir, kann ich aber leider (noch) nicht.

> Mit weniger Übung dauert es zwar länger
> ist aber immer noch keine Raketentechnik.

Na ja, ich werde mir da mal nen Überblick verschaffen.

Vielen Dank schonmal!

Gruss,
Edson

von Meister E. (edson)


Lesenswert?

Hallo kbuchegg,

danke für den Tip mit dem EOF. Hat einwandfrei funktioniert, die 
Mindestanforderung ist damit schon mal erfüllt. Als Testumgebung reicht 
es aus.

Für weitere Projekte werde ich, wie du vorgeschlagen hast, einen anderen 
Weg suchen.

Gruss,
Edson

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.