Start

Experimente

Grundlagen

Produkte
- Lernpakete
- - ELEXS-CD
- - Beispiel
- - Visual Basic
- - ELEXS-DLL
- - Franzis

Neues

Impressum

Die ELEXS.DLL

Für die ELEXS-Programmierung unter Visual Basic 5/6 oder VB.net wurde die neue ELEXS.DLL entwickelt. Im Vergleich zur bisher verwendeten RSLINE.DLL kann die neue DLL mehr:
  • Zusätzliche serielle Kommunikation mit SENDBYTE und READBYTE
  • Delay-Zeiten auch im Mikrosekundenbereich
  • Eigene Programmierung bis unter Windows2000/XP möglich

Download der ELEXS.DLL (elexsdll.zip, 33 KB)

Hier soll zunächst beschrieben werden, wie die auf der ELEXS-CD vorhandenen Beispielprogramme mit VB5 oder VB6 bearbeitet werden können. Später soll die DLL dann auch für andere Geräte eingesetzt werden.

Programmanpassungen

Damit die alten VB3-Quelltexte problemlos in VB5 geladen werden können, müssen sie zunächst im Textformat vorliegen. Die FRM-Dateien auf der CD dagegen sind im Platz sparenden Binärformat gespeichert. Wer noch VB3 auf dem PC hat, kann die Projekte laden und im Textformat neu speichern. Wer nur noch eine neuere Version hat, darf trotzdem weiterlesen, denn die erneuerten Programme werden hier komplett zum Download frei gegeben.

Unter VB3 standen die Deklarationen der DLL-Funktionen vorn in der FRM-Datei. Ab VB5 dagegen muss ein eigenes Modul verwendet werden. Alle Deklarationen stehen nun im Modul ELEXS.BAS. Diese Datei muss in alle neuen Projekte mit eingebunden werden. Alle Funktionsnamen verwenden nun ausschließlich Großbuchstaben. Das ist wichtig, weil beim Aufruf ab VB5 die Groß/Kleinschreibung nicht mehr ignoriert wird.

Attribute VB_Name = "Module1"
Declare Function OPENCOM Lib "ELEXS" (ByVal OpenString$) As Integer
Declare Sub TIMEOUTS Lib "ELEXS" (ByVal b%)
Declare Sub CLOSECOM Lib "ELEXS" ()
Declare Sub SENDBYTE Lib "ELEXS" (ByVal Dat%)
Declare Function READBYTE Lib "ELEXS" () As Integer
Declare Sub DTR Lib "ELEXS" (ByVal b%)
Declare Sub RTS Lib "ELEXS" (ByVal b%)
Declare Sub TXD Lib "ELEXS" (ByVal b%)
Declare Function CTS Lib "ELEXS" () As Integer
Declare Function DSR Lib "ELEXS" () As Integer
Declare Function RI Lib "ELEXS" () As Integer
Declare Function DCD Lib "ELEXS" () As Integer
Declare Function INPUTS Lib "ELEXS" () As Integer
Declare Sub TIMEINIT Lib "ELEXS" ()
Declare Function TIMEREAD Lib "ELEXS" () As Double
Declare Sub DELAY Lib "ELEXS" (ByVal ms As Double)
Declare Sub REALTIME Lib "ELEXS" ()
Declare Sub NORMALTIME Lib "ELEXS" ()

Die Modul-Datei ELEXS.bas

Die Datei ELEXS.BAS wird dem Projekt über das Menü Projekt/Add_module und die Registerkarte Existing hinzugefügt.

Unterschiede zur RSLINE.DLL

Ein Blick auf die Deklarationen zeigt die wichtigsten Unterschiede in den Aufrufen und ihren Parametern.

  • OPENCOM wurde bisher nur die COM-Nummer übergeben, jetzt aber ein kompletter OPEN-String der Form "COM1:1200,N,8,1", also mit allen Parametern wie Baudrate usw. Wenn die Schnittstelleneinstellungen nicht wichtig sind, reicht ein verkürzter String, also z.B. OPENCOM ("COM1:").
  • DELAY wurde bisher ein Integerwert übergeben. Man konnte nur ganze Millisekunden abwarten, z.B. mit DELAY 10. Jetzt wird eine Realzahl übergeben. Man kann also auch kürzere Wartezeiten wie Delay 0.01 verwenden.
  • SENDBYTE und READBYTE sind neu hinzugekommen, werden aber bei den bisherigen ELEXS-Versuchen nicht benutzt. Mit diesen Funktionen können auch Geräte wie CompuLAB und SIOS angesteuert werden.

Bei der Anpassung der vorhandenen ELEXS-Quelltexte muss nur die Übergabe nach OPENCOM verändert werden. Statt i = OPENCOM(1) heißt es nun i = OPENCOM("COM1:"). Alle anderen Funktionen sind kompatibel zur alten Version.

Die angepassten ELEXS-Projekte

Damit jeder gleich loslegen kann, werden hier die überarbeiteten Projekte zum freien Download angeboten. Mit der ELEXS-CD können weiterhin alle Versuche durchgeführt werden. Wenn aber ein Programm verändert werden soll, kann man nun auf das angepasste VB-Projekt zurückgreifen. Wichtig ist, dass vorher die ELEXS.DLL in das Windows-Verzeichnis kopiert wird.

Die neuen Quelltexte verwenden jetzt durchgehend die Voreinstellung COM1. Während man bei der ersten Version noch davon ausgehen konnte, dass ein PC zwei serielle Schnittstellen hat, von denen die ersten mit der Maus belegt ist, gibt es inzwischen oft nur noch eine COM-Schnittstelle, und die Maus ist über PS2 oder USB angeschlossen.

Download der VB5-Quelltexte (elexsvb5.zip, 64 KB)

Die Firma AK-Modul-Bus hat übrigens die ELEXS-Platine neu aufgelegt. Die neue Serie verwendet jetzt grünes Epoxy-Basismaterial. Die bestückten Platinen können auch einzeln bezogen werden. Geplant ist auch eine neue ELEXS-CD, die in Zusammenarbeit mit dem Franzis-Verlag erscheinen soll und zahlreiche neue Versuche enthalten wird.