Bedienungsanleitungen
  Technische Daten     Software Download     Zubehör zum Fan-O-Matic  
Handbuch zur Hardware
Handbuch zur Software
Spezial (für Profis)
Druckbare Anleitungen
Acrobat Reader
Allgemein:
Startseite
Kontakt
innovatek Onlineshop
Forum

Spezial Handbuch (für Profis)

Die nachfolgenden Daten und Hinweise sind in erster Linie für Programmierer und Profis gedacht. Für den normalen Betrieb des Fan-O-Matics sind sie nicht notwenig !

Beschreibung der Kommunikation des Fancontrollers

Es stehen drei Möglichkeiten zur Kommunikation zur Verfügung:

1. serielle Schnittstelle:
Die Software tauscht Daten direkt über die serielle Schnittstelle.
Dabei kann die Software „FanControl“ zur Steuerung der anderen Funktionen nicht benutzt werden.

2. Datenaustausch über FanControl:
Dabei kommuniziert die Software mit dem Programm „FanControl“. Dieses gibt die Daten an das Display weiter und stellt Daten über Tastendruck und Verbindungsstatus zur Verfügung. Diese Version ist langsamer, da der Datentausch mit „FanControl“ Vorrang hat.

3. Steuerung über ActiveX Control
Dieses Control kann in jede Software eingebunden werden, die die Verwendung von ActiveX Control unterstützt.

Beschreibung der seriellen Schnittstelle

Die Schnittstelle arbeitet fest mit 19200Baud, 8 bit, 1 Stoppbit, keine Parität.

1. Verbindung prüfen
Der PC sendet folgende Daten:
0x55 0xFF 0x07 0x01 0x00 0x00 0x00
(Startbyte, Broadcast, Anzahl Bytes, Sende DeviceID, Data, Data, Data)

Innerhalb 250ms muss der Display-Controller antworten:
0x55 0x08 0x05 0xFF 0xXX
(Startbyte, ID Fancontroller, Anzahl Bytes, Ist DeviceID, Softwareversion)

Die Verbindung sollte zyklisch (1-5sec) abgefragt werden, um eine Unterbrechung festzustellen.

2. Text senden
PC sendet:
0x55 0x08 0x18 ZE Z1….Z19
ZE = 0x40 für erste Zeile, 0x41 für zweite Zeile
Z1-Z19 = Textzeichen, immer 20 Zeichen senden
Sonderzeichen müssen vor dem Senden in den zum Display passenden Code umgewandelt werden.

Nach Verarbeitung der Daten antwortet der Controller:
0x55 0x08 0x05 0x40 ZE
ZE = 0 erste Zeile
ZE = 1 zweite Zeile

Der Controller benötigt max. 100ms, um die Daten zu verarbeiten. Es kann immer nur eine Zeile geschickt werden. Danach muss auf Antwort oder mindestens 100ms gewartet werden.

3. Tastendruck
Im Displaymodus sendet der Controller jeden Tastendruck zum PC.
Der Controller sendet:
0x55 0x08 0x05 0x60 TC
TC = 0x01 ENTER-Taste
TC = 0x02 ESC-Taste
TC = 0x04 MINUS-Taste
TC = 0x08 PLUS-Taste

Beschreibung der Kommunikation mit « FanControl »

Hierzu werden Windows Nachrichten benutzt. Dazu ist zuerst das Handle des Fensters „FanControl“ zu bestimmen. In VC++ zum Beispiel wird das so gemacht:

HWND FanControl;
FanControl= ::FindWindow(NULL,"FanControl");
if(FanControl == NULL)
{
Fehler....., Fenster nicht gefunden
}

1. Verbindung prüfen
Das Programm sendet:
::SendMessage(FanControl,WM_USER+0x0100,0,0);
Ist der Rückgabewert = 0, besteht keine Verbindung zum Controller.
Ist er = 1 , ist der Controller verbunden.
Der Wert WM_USER entspricht 0x0400.

2. Text senden:
Es wird jedes Zeichen einzeln geschickt.
Zeile 1 senden:

for(int i=0;i<20;i++) ::SendMessage(FanControl,WM_USER+0x0101,i,Text1.GetAt(i));

Zeile 2 senden:

for(int i=0;i<20;i++) ::SendMessage(FanControl,WM_USER+0x0102,i,Text1.GetAt(i));

Auch hier ist darauf zu achten, das zwischen den Zeilen mindestens 100ms Zeit liegen. Hier erfolgt keine Antwort auf die gesendete Textzeile.

3. Tastendruck
Das Programm sendet:
::SendMessage(FanControl,WM_USER+0x0103,0,0);
Der Rückgabewert entspricht dem Tastencode oder Null, wenn keine Taste betätigt wurde. Hier ist ein Polling im entsprechenden Zeitintervall nötig.

Beschreibung des ActiveX Control

Dieses Control stellt eine einfache Schnittstelle zum Displaycontroller dar.
Es stehen folgende Funktionen zur Verfügung:

StartConnection
Diese Funktion baut die Verbindung zum Controller auf.
Sie muß nach dem Einbinden des Controls einmal aufgerufen werden.

IsConnected
Diese Funktion fragt den Verbindungsstatus ab. Wird 0 zurückgegeben, ist der Controller nicht verbunden, Rückgabewert = 1 bedeutet, Verbindung ist aktiv.

SetPort
Hier wird die Nummer der Com-Schnittstelle eingestellt. Voreingestellt ist Com 1. Gültig ist 1 4 .

SetText1 , SetText2
Der zuschreibende Text wird übergeben. Hierbei übernimmt das Control das Timing des Sendens.

GetKey
Diese Funktion gibt den zuletzt empfangenen Tastencode zurück. Null wird zurückgegeben, wenn seit der letzten Abfrage keine Taste betätigt wurde.