Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
muerzi
Anmeldungsdatum: 18.01.2010 Beiträge: 2
|
Verfasst am: 18.01.2010, 09:45 Titel: Auswertung elektr. Waage |
|
|
Hallo Liebe Gemeinde
Habe von einer Firma günstigst eine elektronische Waage erstanden.
(Etwas älteres Modell ~ 1993)
Jetzt möchte ich diese auf dem Hof meines Vaters aufstellen um allerhand zu wiegen (Kühe, Pferde, Schafe), aber egal.
Leider habe ich den PC dazu nicht bekommen um die Messdaten anzeigen zu können --> Aus Datenschutzgründen konnten sie mir den PC nicht geben.
Die Firma hat mir aber ein BASIC programm gegeben das die Daten über die Serielle SChnittstelle des PC's liest.
Größtenteils habe ich es schon in VB6 übersetzt, nur da wos im die "Wurst" geht komm ich einfach nicht weiter
Könnt ihr mir bitte helfen?
Code: |
konfig$ = "100001101111"
werte! = 0 'Ger„t konfigurieren und Messwerte holen
Counter% = 0
Do
b% = 2048
vout% = 0
For I% = 12 To 1 Step -1
OUT outadr%, (&HFE And INP(outadr%)) 'DTR auf 0 setzen
Select Case Mid$(konfig$, 13 - I%, 1)
Case "0"
OUT outadr%, (&HFD And INP(outadr%)) 'RTS auf 0 setzen
Case "1"
OUT outadr%, (&H2 Or INP(outadr%)) 'RTS auf 1 setzen
End Select
OUT outadr%, (&H1 Or INP(outadr%)) 'DTR auf 1 setzen
If (INP(inpadr%) And &H10) <> &H10 Then
d% = 0 'CTS auf 1 setzen
Else
d% = 1 'CTS auf 0 setzen
End If
vout% = vout% + d% * b%
b% = b% / 2
Next I%
OUT outadr%, (&HFD And INP(outadr%)) 'RTS und DTR auf 0 setzen
OUT outadr%, (&H2 Or INP(outadr%)) 'RTS auf 1 setzen
Select Case vout%
Case Is >= 2048
vout% = vout% - 4096
Case Else
vout% = vout%
End Select
werte! = werte! + vout%
If Counter% <= 0 Then werte! = 0 'Erste Messung wird verworfen,
Counter% = Counter% + 1 'weil vorherige Konfiguration
Loop While Counter% <= anzahl% 'noch gltig.
|
Wies aussieht werden die Daten über RTS, DTR, CTS übertragen.
Wird hier RS232 benutzt oder eine Abwandlung.
RS232 sendet IMHO ja über Rx und Tx.
thx schon mal!
mbg |
|
Nach oben |
|
 |
micha
Anmeldungsdatum: 09.12.2005 Beiträge: 72
|
Verfasst am: 18.01.2010, 12:21 Titel: |
|
|
Sieht so aus als wenn der Controller in der Waage über RTS und DTR gesteuert wird (lesen bei fallender Flanke) aber die eigentlichen Datenbits werden nicht wie Dokumentiert über CTS gelesen sondern "normal" über RX
IN VB6 benutzt du Das Commctrl um die Leitungen zu Treiben
oder machst Du das mit einer DLL für Portzugriffe über IN/OUT ?
Nur mal so am Rande welche Port's stehen denn in Input%/Output% ?
Micha |
|
Nach oben |
|
 |
muerzi
Anmeldungsdatum: 18.01.2010 Beiträge: 2
|
Verfasst am: 18.01.2010, 13:03 Titel: |
|
|
Hallo micha
das ist nur der Ausschnitt aus dem "BASIC" Programm das mit vorliegt.
Ich übersetze es nun in VB6 damit ich eine schöne GUI bekomme.
Auserdem wurde mir gesagt das die Waage nur mit einem URALT Rechner funktioniert, warum konnten sie (Firma) mir auch nicht sagen.
Wie man gezielt Leitungen in VB6 anspricht muss ich erst mal googeln.
Aber über RS232 string versenden ist kein Problem.
Zu deiner Frage zu den Adressen
Code: |
Select Case port%
Case 1
inpadr% = &H3FE
outadr% = &H3FC
Case 2
inpadr% = &H2FE
outadr% = &H2FC
Case 3
inpadr% = &H33E
outadr% = &H33C
Case 4
inpadr% = &H23E
outadr% = &H23C
End Select
|
mfg |
|
Nach oben |
|
 |
dreael Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 2529 Wohnort: Hofen SH (Schweiz)
|
Verfasst am: 18.01.2010, 21:41 Titel: |
|
|
Am besten uns genauer Hersteller und Typ dieser Waage angeben, denn vielleicht lässt sich ja ein Manual im Internet noch dazu finden.
Ansonsten einmal ganz ehrlich: Wird keinerlei reguläres RS-232-Protokoll mit Zeichen unterstützt, für welches Du ganz normal OPEN "COMx:" mit z.B. 9600,N,8,1 o.ä. machen kannst?
Tipp: Ich würde sonst einmal mit HyperTerminal noch etwas spielen! _________________ Teste die PC-Sicherheit mit www.sec-check.net |
|
Nach oben |
|
 |
HorstD
Anmeldungsdatum: 01.11.2007 Beiträge: 110
|
Verfasst am: 19.01.2010, 19:22 Titel: |
|
|
Zitat: | Auserdem wurde mir gesagt das die Waage nur mit einem URALT Rechner funktioniert, warum konnten sie (Firma) mir auch nicht sagen. |
Wahrscheinlich, weil INP und OUT ab Win 2000 / NT nicht funktionieren. |
|
Nach oben |
|
 |
28398
Anmeldungsdatum: 25.04.2008 Beiträge: 1917
|
Verfasst am: 20.01.2010, 18:42 Titel: |
|
|
InpOut32.dll |
|
Nach oben |
|
 |
|