![]() |
VISUAL BASIC CRASHKURS VIII |
Sie haben Visual Basic 3.0 auf Ihrem Rechner installiert? Die bisherigen Teile, Kursprojekt 1, Kursprojekt 2, Kursprojekt 3, Kursprojekt 4, Kursprojekt 5, Kursprojekt 6 und Kursprojekt 7 installiert und abgearbeitet? Prima. Dann können wir loslegen:
Eine vollständige Beschreibung von saferDMX finden Sie auf unseren TechTips-Seiten.
![]() |
Die einfachste Möglichkeit, saferDMX einzusetzen, besteht in der Verwendung unserer PC-Karte 1512B/LC. Alle erforderlichen Aufgaben sind bereits für Sie erledigt, wenn Sie die Datei SAFDMX12.BIN durch Anklicken downloaden und dann als SLHDMX12.BIN in Ihr Projekt einbinden. Werfen Sie die alte Datei SLHDMX12.BIN nicht weg; bitte umbenennen oder auf einen anderen Datenträger sichern- das ist Ihr Standard-Karten-Betriebssystem! Sie brauchen es noch!) Sie müssen das Karten-Betriebssystem jedoch unbedingt aus der Datei laden! Der DLL-Aufuf vBWOS(nn) bringt hier keinen Erfolg, da in der DLL ja die saferDMX-Routinen (noch) nicht eingebunden sind! |
! | ACHTUNG! Derzeit steht nur die Datei für 12-MHz-Karten [1512B/LC] zur Verfügung. Auf 16-MHz-Karten ist das Betriebssystem nicht lauffähig. Auch die Version für die Professional-Karte [1512B, SAFDMX16.BIN] werden wir Ihnen in Kürze hier vorstellen. |
Nr. | gesendete Daten | Wert der Daten | Wert der Prüfsumme | 1 | Startsync | -.- | $00 | 2 | Startbyte | $00 | $00 | 3 | Kanal 1 | $FF | $FF | 4 | Kanal 2 | $FF | $FE | 5 | Kanal 3 | $01 | $FF | 6 | Kanal 4 | $05 | $04 | 7 | Kanal 5 | $10 | $14 | 8 | Gesendete Prüfsumme | $14 |
Dieses Beispiel zeigt ein kurzes DMX-Telegramm, das aus insgesamt 8 gesendeten Kanälen besteht. Bei saferDMX wären das dann 7 Kanäle Daten und ein Checksummen-Kanal. Die Checksummen-Berechnung erfolgt einfach dadurch, indem man -beginnend mit dem Startbyte- alle Kanalwerte zusammenzählt und den $FF (255dez) überschreitenden Übertrag nicht berücksichtigt.
Die Senderoutine (Timerroutine) würde dann für n zu sendende Kanäle wie folgt lauten:
Private Sub AutoXMit_Timer() ' DMX-Ausgabe erfolgt timergesteuert alle 40 ms. If CardAdr > 255 Then ' nur falls wir eine Karte haben..... CheckSum = dmxdef(1) ' Startbyte übernehmen For i = 0 To n-1 ' Neue Werte in die Karte schreiben vbWByte CardAdr, i + &H400, DMXAusgabe(i) Checksum=(Checksum+DMXAusgabe(i)) AND 255 ' dabei laufend Prüfsumme berechnen.. Next i vbWByte CardAdr, n + &H400, CheckSum ' zum Schluß Prüfsumme übertragen dummy = vbDMXStart(CardAdr) ' und DMX abschicken... End If End Sub |
Wenn Sie ein SOUNDLIGHT-Gerät haben, können Sie dies sehr einfach auf den saferDMX-Modus konvertieren oder umschaltbar machen. Update-Prozessoren bzw. Update-EPROMS für Ihr Gerät erhalten Sie als Aktion bis zum 31.12.1999 zum Subventions-Sondertarif von nur DM 5,00 pro Stück (zzgl. MwSt, Versand). Eine Liste der unterstützten Modelle finden Sie auf unserer saferDMX-TechTips-Seite.