Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

kl. Makroprogramm

Forumthread: kl. Makroprogramm

kl. Makroprogramm
31.03.2003 14:47:03
stefan
Hallo!

Ich habe ein Problem beim Auslesen eines Wertes über die serielle Schnittstelle. Die auszulesende Anzeigeeinheit muss ein Ctrl+B (STX) empfangen, um den aktuellen Messwert bereitzustellen.
Was könnte der Fehler in meinem kl. Programms sein? Ich erhalte stets den Wert -1 in Zelle (1,B).

Sub aktWert()

Blatt$ = "Tabelle1"
Rem das Tabellenblatt
ThisWorkbook.Sheets(Blatt$).Activate
Columns("B").Select
Rem Markieren
Selection.ClearContents
Rem Löschen

OPENCOM "com2:9600,N,8,2"
SENDBYTE Asc("0010")
Cells(1, 2).Value = READBYTE
CLOSECOM

End Sub

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: kl. Makroprogramm
31.03.2003 15:30:08
GerdZ

Hallo stefan,

der Fehler ist die Verwendung der ASC-Funktion.
Sie leifert den ASCII-Code des ersten Zeichens der Zeichenkette, hier 48 für "0".
Was Du möchtest, ist sicher der Binär-Wert 0010 = dezimal 2?
Dazu kannst Du die Funktion Bin2Dec aus dem Analysefunktionen-AddIn verwenden
SENDBYTE Bin2Dec("0010")
oder Du verwendest hexadezimale Werte
SENDBYTE &H02

Gruß
Gerd


Anzeige
Re: kl. Makroprogramm
01.04.2003 11:11:39
stefan

Danke Gerd für deine Info!
Allerdings bekomme ich auch beim Senden von &H02 stets die -1 in meiner Zelle angezeigt.

Ist vielleicht das "Cells(1,2).Value=Readbyte" fehlerhaft?


Re: kl. Makroprogramm
01.04.2003 21:08:27
GerdZ

Hallo Stefan,

die -1 sagt aus, daß innerhalb der Timeout-Zeit kein Zeichen empfangen wurde.
Das könnte daran liegen, daß der TimeOut-Wert (Standard: 30ms) zu niedrig ist oder der Steuercode zum Bereitstellen des Wertes nicht korrekt übertragen wurde. Ist der Befehlscode korrekt? Sind die Schnittstellenparameter korrekt? Funktioniert die Schnittstelle überhaupt?

Gruß
Gerd


Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige