Forum: PC-Programmierung Batch File mit CR


von Hannes (Gast)


Lesenswert?

Liebe Kollegen!

Ich möchte einen Beamer beim Startup einschalten.

Dazu muss ich einen Code senden und mit carriage return abschließen

wenn ich
1
echo test > COM6
schreibe habe ich Leerzeichen NL und CR

bei
1
set /p x=test <nul >\\.\COM6
nur den Text aber kein CR

HILFE!

Wie kann ich nur CR hinten anhängen?????

von Peter II (Gast)


Lesenswert?

schreibt doch alles in eine Datei was du senden willst

cat test.txt > \\.\COM6

von Hannes (Gast)


Lesenswert?

wenn ich die ASCII Zeichen via HEX Code eingeben könnte wäre mein 
Problem gelöst

von Hannes (Gast)


Lesenswert?

Wenn ich es in eine Datei schreibe habe ich aber nicht nur CR dabei.

von Peter II (Gast)


Lesenswert?

Hannes schrieb:
> Wenn ich es in eine Datei schreibe habe ich aber nicht nur CR dabei.

du kannst aber einfach das CR mit einem Editor rein scheiben.

von Hannes (Gast)


Lesenswert?

wie?

Ich habe am Ende der Zeile auf Enter gedrückt. Wenn ich die Datei sende 
ist es nicht dabei.

von Peter II (Gast)


Lesenswert?

Hannes schrieb:
> wie?
>
> Ich habe am Ende der Zeile auf Enter gedrückt. Wenn ich die Datei sende
> ist es nicht dabei.

dann verwende mal statt cat copy

von Hannes (Gast)


Lesenswert?

@echo off
mode COM6 Baud=9600 Parity=N Data=8 Stop=1
echo 0x02>COM6
::set /p x=a <nul >\\.\COM6
x += chr(0x30) + chr(0x31) + chr(0x32)
::echo CHR$(27) > test.txt
::copy test.txt /b COM6

::copy/B test.bin COM6
cat test.txt > \\.\COM6

weder cat noch copy/b noch irgend etwas anderes funktioniert.

Ich versuche seit 2 Stunden ein einfaches CR zu senden.

von Peter II (Gast)


Lesenswert?

Hannes schrieb:
> Ich versuche seit 2 Stunden ein einfaches CR zu senden.

eventuell ist ja Batch nicht das richtige mittel.

teste mal mit powerschell

http://blogs.msdn.com/b/powershell/archive/2006/08/31/writing-and-reading-info-from-serial-ports.aspx
PS> $port= new-Object System.IO.Ports.SerialPort COM3,9600,None,8,one
PS> $port.open()
PS> $port.WriteLine("Hello world\r\n")

von Stefan P. (form)


Lesenswert?

Ich weiss nicht obs hilfreich ist (weil hierbei auch CR und LF bei 
rauskommen), aber das Leerzeichen was am Anfang erwähnt wurde, entsteht 
hierdurch:

Mit Leerzeichen:
echo text > file

Ohne Lerzeichen:
echo text> file

von Stephan (Gast)


Lesenswert?


von Norbert (Gast)


Lesenswert?

Linux: Hier kann man mit dem Parameter -n ein Newline unterdrücken
und mir -e Escape Sequenzen erlauben:
1
echo -n -e "test\r"
Sendet test mit <CR>
1
echo -n -e "test\r\n"
Sendet test mit <CR><LF>

Vielleicht gibt's ja so etwas Einfaches auch bei Windows.

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.