[SOUNDLIGHT LOGO] VISUAL PROGRAMMING CRASHKURS

Intro: Visual BASIC oder PASCAL?
In allen Sprachen gleich: 4 Schritte zum Erfolg

Sie haben eine SOUNDLIGHT DMX PC-Karte 1512B oder wollen sich eine zulegen? Gut, dann sollen Sie sie ja auch benutzen können. Die Karte ist wahrlich universell: sie läßt sich sehr einfach mit allen Sprachen - Assembler, DOS BASIC, PASCAL, C, den visuellen Programmieroberflächen Visual Basic, DELPHI und Visual C++ bedienen. Am meisten Spaß machen natürlich die visuellen Oberflächen unter Windows, weil Sie sich um Grafik fast nicht kümmern müssen: die ist schon komplett vorhanden und eine ganze Menge Systemfunktionalität gibt's auch fertig- man kann sich also voll und ganz auf die eigentliche Aufgabe, die Lichtsteuerung, konzentrieren.

Die einfachsten und preiswertesten Möglichkeiten sind der Einstieg über Visual BASIC oder Visual PASCAL, genannt DELPHI. Wir zeigen Ihnen hier zunächst die Grundschritte in beiden Programmierumgebungen. Dazu verwenden wir Visual BASIC 3.0 und DELPHI 1.0. Beispiele für Visual BASIC 5.0 und DELPHI 2.0 können Sie am Ende des Kapitels downloaden.

Nachfolgend erläutern wir Ihnen die grundlegenden 4 Schritte für jedes Projekt. Sie können alle Dateien am Ende des Kapitels downloaden. Nutzen Sie diese Skelette als Ausgangsbasis für Ihre eigenen Programme.

Der Visual BASIC Entwurfsbildschirm

Der DELPHI Entwurfsbildschirm


Schritt 1: Funktionen deklarieren

Wenn Sie unsere Karte aus dem Karton nehmen, ist sie "dumm". Das bedeutet: wir müssen ihr erst einmal ein Betriebssystem laden, damit sie DMX ausgeben kann, und dann müssen wir die Funktionen deklarieren, mit denen wir dies Betriebssystem ansprechen. Auch das Laden des Betriebsprogramms kann durch eine dieser Funktionen erfolgen. Sie sind in einer datei namens SLHDMX2.DLL gespeichert, die als Windows Laufzeitbibliothek geladen wird. Bevor die Funktionen einer DLL genutzt werden können, müssen sie der Programmierumgebung bekanntgemacht werden, sie müssen deklariert werden.

BASIC
DELPHI

Die Deklarationen werden bei Visual BASIC im Modul MODUL1.BAS ("Neues Modul hinzufügen"), bei DELPHI in der MAINUNIT.PAS untergebracht.

Legen Sie in diesem Modul ebenfalls ein Datenarray an, das als Übergaberegister an die Karte dienen kann. Wir nennen es daher DMXAusgabe und optimalerweise sollte es natürlich Platz für 512 Daten (Kanäle) enthalten:

DIM DMXAusgabe(0 to 511) As Integer (BASIC)
DmxAusgabe:Array[0..511] of Byte; (DELPHI)


Schritt 2: eine Form erstellen und die Karte initialisieren

Da die Karte zu Programmbeginn initialisiert werden muß, empfiehlt es sich, dies gleich beim Laden der Form zu erledigen. Damit initialisieren Sie die Karte zur Laufzeit automatisch bei Programmstart. Natürlich können Sie die Initalisierung auch durch einen Button oder ein Menü aufrufbar machen, das haben wir z.B. auch bei unseren Demos getan - dann haben Sie jederzeit Zugriff auf diese Funktion.

Der beste Platz für die automatische Initialisierung ist bei Visual BASIC das FORM_LOAD Ereignis, bei DELPHI tragen Sie es in MainForm:OnActivate ein.

Um die Karte erfolgreich in Betrieb nehmen zu können, müssen Sie nun folgende Operationen durchführen:

BASIC
DELPHI

Den vollständigen Code entnehmen Sie bitte den ladbaren Beipieldateien.


Schritt 3: einen Timer einrichten

Nun wäre unsere Karte betriebsbereit. Die auf der Anwenderoberfläche, durch Fader, Chaser, Mausbewegung u.ä. erzeugten Daten müssen der Karte übergeben werden. Das erledigt ein Timer, der die Daten in regelmäßigen Intervallen an die Karte übergibt. Nur sich verändernde Daten müssen geschrieben werden.

Um Schreibzugriffe auf die Karte erfolgreich durchführen zu können, sollten Sie wissen:

Setzen Sie die Timer-Eigenschaft ENABLED zunächst auf FALSE. Der Timer wird erst dann freigegeben, wenn eine Karte tatsächlich im System gefunden worden ist und die DMX-Übertragung gestartet wird. Zum Stoppen der Übertragung genügt es dann, den Timer einfach wieder abzuschalten.

BASIC
DELPHI


Schritt 4: Anwenderprogramm erstellen

Nun haben Sie weiter nichts zu tun, als Ihre Anwenderumgebung zu erstellen: Plazieren Sie nach Herzenslust Kontrollelemente auf dem Entwurfsbildschirm und schreiben Sie die von Ihnen ermittelten DMX-Ausgabedaten in das Array DMXAusgabe. Passen Sie eventuell die Schleife in der Ausgaberoutine und die voreingestellte Kanalzahl in den Karten-Arbeitsparametern (bei der Initialisierung der Karte, voreingestellt: 100 Kanäle) an.

Das war es!

Obwohl BASIC und PASCAL zwei völlig unterschiedliche Sprachen sind, läßt sich eins ausmachen: die Struktur ist in beiden Fällen ähnlich. Auch wenn Sie sich anders entscheiden: die nachfolgenden Beispiele können Sie also in jedem Fall als Vorlage für eigene Versuche benutzen. Wir starten zunächst mit einem Paket Visual BASIC Demos und werden dies im Laufe der zeit auch auf andere Sprachen ausdehnen.

VIEL SPASS !


Projekt-Quellcode laden

Wir haben sowohl für das Visual BASIC Beispiel als auch für das DELPHI Beipiel alle erforderlichen Dateien in jeweils einem Archiv zusammengefaßt. Benutzen Sie diese als Ausgangspunkt für Ihre eigenen Anwendungen.

Erstellen Sie auf Ihrer Festplatte ein neues Verzeichnis, in das Sie die Datei laden und dort entpacken. Sie erhalten dann folgende Files:

Visual BASIC 3.0
  1. VBDEMO.MAK
  2. VBDEMO.FRM
  3. VBDEMO.FRX
  4. MODUL1.BAS
  5. SLHDMX2.DLL
  6. SLHDMX12.BIN
  7. SLHDMX16.BIN
Visual BASIC 5.0
  1. VBDEMO.VBP
  2. VBDEMO.VBW
  3. VBDEMO.FRM
  4. VBDEMO.FRX
  5. MODUL1.BAS
  6. SLHDMX32.DLL
  7. SLHDMX12.BIN
  8. SLHDMX16.BIN
DELPHI 1.0
  1. DEDEMO.DPR
  2. DEDEMO.OPT
  3. DEDEMO.RES
  4. MAINUNIT.DFM
  5. MAINUNIT.PAS
  6. DESK.ICO
  7. SOUNDLL2.BMP
  8. SLHDMX2.DLL
  9. SLHDMX12.BIN
  10. SLHDMX16.BIN
DELPHI 2.0
  1. DEDEMO.DPR
  2. DEDEMO.DOF
  3. DEDEMO.RES
  4. MAINUNIT.DFM
  5. MAINUNIT.DCU
  6. MAINUNIT.PAS
  7. DESK.ICO
  8. SOUNDLL2.BMP
  9. SLHDMX32.DLL
  10. SLHDMX12.BIN
  11. SLHDMX16.BIN

Kopieren Sie davon die Datei SLHDMX2.DLL in Ihr \WINDOWS\SYSTEM Verzeichnis.

[OPEN] Projekt-Sourcecode VISUAL BASIC 3.0 downloaden
[OPEN] Projekt-Sourcecode VISUAL BASIC 5.0 downloaden
[OPEN] Projekt-Sourcecode DELPHI 1.0 downloaden
[OPEN] Projekt-Sourcecode DELPHI 2.0 downloaden


Wir hoffen, Sie hatten Spaß bis hierher. Viel Vergnügen beim Experimentieren. Kommentare und eigene Beiträge nehmen wir gern entgegen, mailen Sie einfach an





zurück zur [HOME]SOUNDLIGHT HOMEPAGE