Loksoft

Navigationslinks überspringenLoksoft : Downloads : LKTerm
Navigationslinks überspringen.

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:

Konfiguration der seriellen Schnittstelle

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:

SymbolDezimalHexBeschreibung
NUL00NULL
SOH11START OF HEADING
STX22START OF TEXT
ETX33END OF TEXT
EOT44END OF TRANSMISSION
ENQ55ENQUIRY
ACK66ACKNOWLEDGE
BEL77BELL
BS88BACKSPACE
HT99HORIZONTAL TABULATION
LF10ALINE FEED
VT11BVERTICAL TABULATION
FF12CFORM FEED
CR13DCARRIAGE RETURN
SO14ESHIFT OUT
SI15FSHIFT IN
DLE1610DATA LINK ESCAPE
DC11711DEVICE CONTROL ONE
DC21812DEVICE CONTROL TWO
DC31913DEVICE CONTROL THREE
DC42014DEVICE CONTROL FOUR
NAK2115NEGATIVE ACKNOWLEDGE
SYN2216SYNCHRONOUS IDLE
ETB2317END OF TRANSMISSION BLOCK
CAN2418CANCEL
EM2519END OF MEDIUM
SUB261ASUBSTITUTE
ESC271BESCAPE
FS281CFILE SEPARATOR
GS291DGROUP SEPARATOR
RS301ERECORD SEPARATOR
US311FUNIT 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:

Symbolleiste1

  1. Speichern des Empfangsfensters
  2. Empfangsfenster drucken
  3. Empfangsfenster löschen
  4. Gesendeten Text anzeigen
  5. Steuerzeichen ausführen
  6. Nur Zeilenumbrüche ausführen
  7. Empfangsfenster zyklisch speichern

Symbolleiste über der Baumansicht:

Symbolleiste2

  1. Neue Datei öffnen.
  2. Historie speichern.
  3. Neue Gruppe erzeugen.
  4. Neues Kommando erzeugen.
  5. Selektiertes Element verändern.
  6. Selektierte Elemente löschen (Achtung keine Sicherheitsabfrage).
  7. Baumansicht leeren (Achtung keine Sicherheitsabfrage).
  8. Für alle Kommandos neue Tastenkombinationen definieren (Überschreibt alle vorher definierten Tastenkombinationen).
  9. 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).

Script Einstellungen

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.