Terminal Download
Download
Kurzanleitung
Lizenz
Terminalprogramm für direkte Kommunikation mit einem Endgerät über die serielle
Schnittstelle (RS232). Das Terminal bietet einige Funktionen um Befehle zu organisieren
und führt eine History über gesendete Befehle. Mit den Tastenkombinationen können dann die Befehle
wiederholt werden.
Das Terminal kann bevor etwas gesendet wird auch ein PAscal Script ausführen.
Beim Empfang kann eingestellt werden, ob nach einem Trigger, oder nach einer
gewissen inaktiven Zeit ein Pascal Script ausgeführt werden soll.
Für die History Funktion (Liste im rechten Teil des Hauptfensters) wird der
XML Parser von Microsoft benötigt (MSXML 4.0)
Kompatibilität:
- Windows 2000
- Windows XP
- Windows Vista (nicht getestet, sollte aber funktionieren)
- Windows 7 (nicht getestet, sollte aber funktionieren)
Wenn jemand LKTerm auf einem nicht getesteten Betriebssystem ausführt, bin ich
über die Information dankbar (E-Mail an die Adresse im Infofenster. Erreichbar
über das Hilfe Menü)
Hauptfenster:
Kurzanleitung:
Mit dem Button "ComPort" wird die Schnittstelle ausgewählt und mit dem
Button "On" eingeschaltet. Danach ist die Schnittstelle sende und Empfangsbereit.
Jetzt kann der zu sendende Text eingeben und auf der Tastatur "Enter"
oder den Button "Senden" gedrückt werden.
Es wird immer das Prefix, der Text und das Postfix gesendet. Steuerzeichen können
mit ihrem ASCII Code gesendet werden (Dezimal oder Hexadezimal). Die Zahl muss mit
Schrägstrichen eingefasst werden. Ein Carriage Return wird mit "/13/"
gesendet. Ein Carriage Return Line Feed mit "/13//10/". Die Steuerzeichen
mit einem ASCII Code unter 32 können auch mit ihrem symbolischen Namen geschrieben
werden.
- stx = Start Of Text
- eot = End Of Text
- tab = Tabulator
- lf = Line Feed
- cr = Carriage Return
Hexadezimale Zahlen müssen mit dem Präfix 0x oder $ versehen
werden. Ein Carriage Return wird also mit /0xD/ oder /$D/
geschrieben. Ein Carriage Return mit Line Feed wird demzufolge als /$D//$A/
geschrieben.
Komplete Liste der Steuercodes:
Symbol | Dezimal | Hex | Beschreibung |
NUL | 0 | 0 | NULL |
SOH | 1 | 1 | START OF HEADING |
STX | 2 | 2 | START OF TEXT |
ETX | 3 | 3 | END OF TEXT |
EOT | 4 | 4 | END OF TRANSMISSION |
ENQ | 5 | 5 | ENQUIRY |
ACK | 6 | 6 | ACKNOWLEDGE |
BEL | 7 | 7 | BELL |
BS | 8 | 8 | BACKSPACE |
HT | 9 | 9 | HORIZONTAL TABULATION |
LF | 10 | A | LINE FEED |
VT | 11 | B | VERTICAL TABULATION |
FF | 12 | C | FORM FEED |
CR | 13 | D | CARRIAGE RETURN |
SO | 14 | E | SHIFT OUT |
SI | 15 | F | SHIFT IN |
DLE | 16 | 10 | DATA LINK ESCAPE |
DC1 | 17 | 11 | DEVICE CONTROL ONE |
DC2 | 18 | 12 | DEVICE CONTROL TWO |
DC3 | 19 | 13 | DEVICE CONTROL THREE |
DC4 | 20 | 14 | DEVICE CONTROL FOUR |
NAK | 21 | 15 | NEGATIVE ACKNOWLEDGE |
SYN | 22 | 16 | SYNCHRONOUS IDLE |
ETB | 23 | 17 | END OF TRANSMISSION BLOCK |
CAN | 24 | 18 | CANCEL |
EM | 25 | 19 | END OF MEDIUM |
SUB | 26 | 1A | SUBSTITUTE |
ESC | 27 | 1B | ESCAPE |
FS | 28 | 1C | FILE SEPARATOR |
GS | 29 | 1D | GROUP SEPARATOR |
RS | 30 | 1E | RECORD SEPARATOR |
US | 31 | 1F | UNIT SEPARATOR |
Gesendete Zeichen werden in der Baumansicht im rechten Bereich angezeigt. Die Befehle
können mit Drag&Drop sortiert und in Verzeichnissen organisiert werden.
Im Kontextmenü der Baumansicht, kann jedem Befehl ein Name sowie eine Tastenkombination zugewiesen
werden.
Symbolleiste über dem Empfangsfenster:
- Speichern des Empfangsfensters
- Empfangsfenster drucken
- Empfangsfenster löschen
- Gesendeten Text anzeigen
- Steuerzeichen ausführen
- Nur Zeilenumbrüche ausführen
- Empfangsfenster zyklisch speichern
Symbolleiste über der Baumansicht:
- Neue Datei öffnen.
- Historie speichern.
- Neue Gruppe erzeugen.
- Neues Kommando erzeugen.
- Selektiertes Element verändern.
- Selektierte Elemente löschen (Achtung keine Sicherheitsabfrage).
- Baumansicht leeren (Achtung keine Sicherheitsabfrage).
- Für alle Kommandos neue Tastenkombinationen definieren (Überschreibt alle vorher definierten Tastenkombinationen).
- Defaultwerte für die definierten Parameter anzeigen.
Skript:
Nachdem Zeichen empfangen wurden, oder bevor Zeichen gesendet werden kann ein Script
ausgeführt werden. Damit ist es möglich vor dem Senden eine Checksumme
hinzuzufügen, oder Handshake Leitungen umzuschalten. Ausserdem können
Meldungen im Log bereich ausgegeben werden.
Beim Empfangen kann das Script entweder Zeitgesteuert nach dem Empfang des letzten
Zeichens ausgelöst werden, oder nach dem Empfang eines Trigger Strings.
Das Script wird in Pascal programmiert. Ausser den Standard Befehlen stehen einige
Möglichkeiten zur Manipulation von LKTerm zur Verfügung.
Eine Beschreibung der möglichen Pascal Befehle findet sich unter
http://www.remobjects.com/ps.aspx (Englisch).
Beispiel:
begin
if (Text = 'abc'#13#10) then
Send('def');
SetRTS(true);
SetDTR(true);
end.
Das obige Beispiel als Sende Script ausgeführt, setzt sowohl die RTS und die DTR
Leitung. Ausserdem wird der Text 'def' gesendet, wenn in LKTerm der Text 'abc' gesendet
wurde (mit Carriage Return und Line Feed). 'def' wird vor 'abc' gesendet.
Soll der zu sendende Text verändert werden, muss die Variable Text geändert werden.
var
xMsg: string;
begin
if GetRTS then
xMsg := 'RTS = true'#13#10
else
xMsg := 'RTS = false'#13#10
if GetDTR then
xMsg := xMsg + 'DTR = true'#13#10
else
xMsg := xMsg + 'DTR = false'#13#10
if GetDSR then
xMsg := xMsg + 'DSR = true'#13#10
else
xMsg := xMsg + 'DSR = false'#13#10
if GetCTS then
xMsg := xMsg + 'CTS = true'#13#10
else
xMsg := xMsg + 'CTS = false'#13#10
if GetRing then
xMsg := xMsg + 'Ring = true'#13#10
else
xMsg := xMsg + 'Ring = false'#13#10
WriteLn(xMsg);
end.
Ein Beispiel für eine CRC Berechnung und das anschliessende Anhängen der Checksumme
könnte folgendermassen aussehen:
var
xLowByte: WORD;
xHighByte: WORD;
xCRC: WORD;
begin
xCRC := CRC16(0, Text);
xLowByte := xCRC and $FF;
xHighByte := xCRC shr 8;
ShowMessage(IntToStr(xCRC) + ' - ' + IntToStr(xHighByte) + ' - ' + intToStr(xLowByte));
Text := Text + chr(xHighByte) + chr(xLowByte);
end.
Download
download (LKTerm.zip 1713KB)
Lizenz
Das Programm darf frei benutzt werden. Das Programm darf ohne Bewiligung des
Autors in keiner Weise verkauft werden. Das Programm darf nicht ohne Bewilligung des Autors auf einem kostenpflichtigen
Download Portal angeboten werden.
|