DifDap ist Freeware unter GNU Lizenz.
Darf aber als Freeware nicht kommerziell genutzt werden.
Im oberen Teil des Programmfensters werden Bytefolgen, die gesendet
werden sollen, eingetragen.
Im unteren Teil des Programmfensters wird ein Protokoll
geführt. Hier werden auch die empfangenen Daten ausgegeben.
Aber, der Reihe nach:
Als erster Schritt
muss das Device, mit dem Daten ausgetauscht werden
sollen, über das Menü Device/Device wählen
festgelegt
werden.
Über <Registry öffnen> lässt
sich RegEdit öffnen und man kann das Device dann dort direkt
suchen / auslesen.
Im Block <Schreiben> und <Lesen> lassen
sich hier noch Optionen für die Datenübertragung
setzen.
Schreiben / Präfix: dieses Byte wird jeder Sendung vorn
angehängt.
Schreiben / Suffix: dieses Byte wird jeder Sendung hinten
angehängt.
Beim Lesen wird eine Bytesequenz erwartet. Nach Empfang des 1. Bytes
wird ein Timer gestartet. Die Empfangssequenz gilt als beendet, wenn
<Timeout> abgelaufen ist, oder <max
Blocklänge> gelesen wurde oder das <Blockende
Byte> empfangen wurde.
Ob der Datenaustausch mit dem Device klappt, hängt auch vom
Treiber und
ggf. der gewählten Zugriffsstelle in einer Treiberkette ab.
Difdap verwendet CreateFile();, WriteFileEx();, ReadFileEx();
und dabei teilweise Overlapped Zugriffe. Es wird nicht mit
DeviceIoControl();
gearbeitet.
Der zweite Schritt
sollte dann die Eingabe der Sendesequenzen sein (Menü
Bearbeiten / Kommando zufügen).
Die Bytes des Kommandos müssen als Hexwerte eingegeben werden.
Pro
Sendeblock sind 8 Byte + Präfix + Suffix möglich.
Kommandos werden im Hauptfenster zeilenweise ggf. mit Präfix
und/oder Suffix angezeigt und können von dort dann mit der
Maus
zum Senden ausgewählt werden.
Als dritter Schritt
muss dann das ausgewählte Device geöffnet werden.
Geht über das Menü Device/Device
öffnen.
DifDap ist damit arbeitsbereit und gibt empfangene Daten im
Protokollfenster zeilenweise aus.
Sollen Daten gesendet werden, muss das gewünschte Kommando
markiert werden und dann: Bearbeiten / Kommando senden.
Komplette Sätze von Kommandos lassen sich auch speichern /
einlesen.
DifDap stellt dazu die Funktionen <Befehlsdatei
öffnen> und
<Befehlsdatei speichern> im Menü, Option Datei
zur Verfügung.
Zu guter letzt:
Die meisten Funktionen lassen sich auch über die Buttonleiste
direkt ansprechen.
Doppelklick links im Kommandofenster auf eine Zeile sendet die
entsprechende Bytefolge.
Rechtsklick auf ein Kommando öffnet den
Kommando-Bearbeitungs-Dialog.
Die Protokollzeilen haben als 1. Zeichen ein Symbol, das anzeigt, was
passiert ist.
< = Daten gesendet
> = Daten empfangen
+ = sonstiges Ereignis
? = irgend was anderes
Die Ausgaben im Protokollfenster können via
Menü/Datei/Ausgaben speichern in
eine Textdatei geschrieben werden.
Wenn DifDap im Protokollfenster sagt, eine Bytefolge sei "successful"
gesendet, aber am angeschlossenen Gerät nichts ankommt, kann
es
sein, dass die Daten irgendwo in der Treiberkette in einem
Pufferspeicher hängen und trotzdem "gesendet erledigt" an
DifDap
zurückgemeldet wurde.
DifDap = Device
Interface For Debugging And Pleasure
Bugreports und sonstiges:
E-Mail an hu(dot)stocker(at)stocker-hl(dot)de
TRY IT - ENJOY DifDap besteht aus einer einzigen Datei und wird nur
aufkopiert. Benötigt werden direk folgende
Standard-Windows-Supportdateien: