| |
|
|
Robert Hildebrand | Hello together,
I have 6 serial Interfaces permanent abzufragen (Messgeraete) and must these in a data base (dBase) Save.
has someone a idea??
LG
Robert |
|
|
| XProfan 10, WinXP prof
Robert Hildebrand | 05/27/09 ▲ |
|
|
|
|
KHR | Hi,
so heavy is the still not.
I mach the with 8 seriellen (USB) Interfaces and then yet over ModBus - log
unfortunately can I,may I whom code not release, there it To many details over The communication with our Sensoren show would.
The Access to The ComPorts was simply, the reading and write too. on the ModBus-communication Have I me ne while The teeth ausgebissen
And if You then The Strings in memory have, stay you for Speichermöglichleiten any ways open
ComPorts arrange,
then in Ner schleife
The inquire Send, in nem String The response abolen, whom String process, Result Save, Send or whatever and moreover to that nächten Port, The same action
if any through are, again on whom beginning the Loop |
|
|
| Gruß Karl-Heinz WIN XP home/Pro / XPROFAN 11 / P2CPP ATMEL + BASCOM Fan | 05/27/09 ▲ |
|
|
|
|
Robert Hildebrand | I should The com4 and COM5 inquire, but I get The data not whom screen |
|
|
| XProfan 10, WinXP prof
Robert Hildebrand | 06/05/09 ▲ |
|
|
|
|
Sato Pinto | Hello
Erzähl time which your difficulty are. hardware? and what You very make want, Perhaps can I you help.
greeting Sato |
|
|
| |
|
|
|
E.T. | |
|
| Grüße aus Sachsen... Mario WinXP, Win7 (64 Bit),Win8(.1),Win10, Win 11, Profan 6 - X4, XPSE, und 'nen schwarzes, blinkendes Dingens, wo ich das alles reinschütte... | 06/06/09 ▲ |
|
|
|
|
GDL | Hi,
time quick NEN couple Auszüge from my Steuerprogramm.come timewise not moreover the rather apart To klauben.Perhaps helps it to you something. CompileMarkSeparation====================================================================
proc schnittstelle
declare such%
If comname$=Port
Let t$=Falsche Schnittstelle
Let n$=Port wird nur bei GDL genutzt.Stelle jetzt COM1 ein.Bitte im Startmenü unter Einstellungen ändern.
MessageBox(n$,t$,64)
comname$=Com1 Testmodus.Später Ausremmen
endif
Alte Rechner benötigen DTRhi/DTRlow
comname$=comname$+:
comi1&=opencom(comname$,4096,4096)
erfolg%=SetCom(comname$+9600,N,8,1)
erfolg%=setcomext(comi1&,0,0,0,$001,0,0) Ältere Rechner stürzen ohne diese Zuweisung ab
case erfolg% = 0: settext _text&[5],comname$+ erfolgreich geöffnet.
Proc_DTRhi (comi1&) PC Anbindung DTR auh High setzen
daten$=chr$(111)
senden
fehler%=WriteCom(comi1&,daten$)
ComError(comi1&)
endproc
ja
=======================================================================
proc empfangen
nur für 1 Zeichen abfangen
name$=@ReadCom$(comi1&,1)
@ComError(comi1&)
casenot name$=:return
WhileNot name$ =
name$=@ReadCom$(comi1&,1)
EndWhile
endproc
======================================================
=== DTR auf HIGH setzen: ====================================================
PROC Proc_DTRhi
PARAMETERS Handle% Parameter 1 = Handle des Comports
fehler% = @EscapeCommFunction(Handle%, 5)
ENDPROC
=== DTR auf LOW setzen: =====================================================
PROC Proc_DTRlo
PARAMETERS Handle% Parameter 1 = Handle des Comports
fehler% = @EscapeCommFunction(Handle%, 6)
ENDPROC
====================================================
proc senden
Proc_DTRhi (comi1&)
Proc_DTRlo (comi1&) PC_Anbindung synchronisieren
sleep 30
daten$=chr$(100)+chr$(100)+chr$(100)+daten$
fehler%=WriteCom(comi1&,daten$)
ComError(comi1&)
Proc_DTRhi (comi1&) Geht nicht
ja
einlesen im Betrieb ausremmen
endproc
=============================================================== class=s2>====
Dauerempfang.over again with Sync.since the Übertragung of wheel on splint natural often Übertragungsfehler produced. CompileMarkSeparation
proc reading BMelder Stellpulttaster
COM interface read
interface becomes on the Proganfang opened and first on the Progende closed
declare sync%,lb%
settext _text&[12],Einlesestatus : active +time$(0)+ +left$(time$(1),5)
+ Zeitwechsel is one Einlesevorgang.
interface read 3time 255 and 1time 0 one after another is Sync
Empfangsprotokoll 255 255 255 0 railway-station point Lok selection Fehlerbyte
selection
254 = Stellpult
253 = speed
252 = Standardgeschwindigkeit with switch on green demand
Yes
clear cstart%
clear sync%
clear lb%
comwert$=@ReadCom$(comi1&,1)
@ComError(comi1&)
case st$(ord(comwert$))=255:inc sync%
whilenot comwert$=
comwert$=@ReadCom$(comi1&,1)
@ComError(comi1&)
case st$(ord(comwert$))=255:inc sync%
If st$(ord(comwert$))=0 Beginn the Datenprotokolls
has here nothing with Start,Stopbit To do, separate supplant the Handshaking if sync%=3
lb%=1 The three 255 Startbyte get at folgendem Nullbyte recognized
else
clear sync%
clear cstart%
clear lb%
endif
endif
if lb% =1
inc cstart%
_inhalt%[cstart%]=ord(comwert$)
endif
if cstart% = 5
clear cstart%
clear sync%
clear lb%
Fehlerbyte produce
Fehlerbyte vergleichen
with Error _inhalt%[5]=0
if _inhalt%[5]=253
settext _text&[8],Lok : +right$(00+st$(_inhalt%[4]),3)
evaluate1
if this BMelder something auslöst
tasterbahnhof%=_inhalt%[2]
tasterwert%=_inhalt%[3]
tasterwert%=tasterwert%+(tasterbahnhof%*256)-256 spots weg here of 1 To 999
bm_auswerten
elseif _inhalt%[5]=254
settext _text&[8],keyboard : +right$(00+st$(_inhalt%[3]),3)
settext _text&[9],Stellwerk : +right$(00+st$(_inhalt%[2]),3)
tasterbahnhof%=_inhalt%[2]
tasterwert%=_inhalt%[3]
evaluate
elseif _inhalt%[5]=252
settext _text&[8],Lok : +right$(00+st$(_inhalt%[4]),3)
real_speed
endif
endif
wend
otherwise gives it with the thread.pcu Schlüsselfeldsalat
case wennoffen%=1:dbuse(#1)
case dannoffen%=1:dbuse(#2)
Ablaufbox inquire
if getfocus(ablaufbox&)
setfocus(%hwnd)
endif
endproc
Hello Georg |
|
|
| |
|
|
|
Robert Hildebrand | I must 6 serial Interfaces inquire and the data in a File write. Angschlossen are each one Vielfachmessgerät with whom I each power, thrill, frequency etc. inquire must. unfortunately can I The data not yet once on-screen see. I use the Beispielprogramm from the Profan-Help. Vielleich can You me help.
Robert |
|
|
| XProfan 10, WinXP prof
Robert Hildebrand | 06/08/09 ▲ |
|
|
|
|
Sato Pinto | Hello Robert
Vormal vergiss The 6 Schnitstellen and write whom Program so the first a Schnitstelle functions, then see we moreover. it watts too help whom code here To posting so we see can fals there possible something changed go ought to
Grus
Sato |
|
|
| |
|
|
|
GDL | have unfortunately no 6 Interfaces.therefore not funktionüberprüft. CompileMarkSeparationdeclare com&[6],ende&,erfolg%,anzahl%,comname$,wert$
cls
Schnittstellen vorbereiten
anzahl%=1
whilenot anzahl% > 6
comname$=Com+str$(anzahl%)+:
com&[anzahl%]=opencom(comname$,4096,4096)
erfolg%=SetCom(comname$+9600,N,8,1)
case erfolg% = 0: print comname$+ erfolgreich geöffnet.
casenot erfolg% = 0: print comname$+ nicht geöffnet.
erfolg%=setcomext(com&[anzahl%],0,0,0,$001,0,0) Bei manchen Rechnern nötig
inc anzahl%
wend
================== Ende Vorbereiten
################## Unterprogramme ####################
proc empfangen
declare comwert$,leswert$
clear wert$
comwert$=@ReadCom$(com&[anzahl%],1)
@ComError(com&[anzahl%])
leswert$= str$(ord(comwert$))
wert$=leswert$
whilenot comwert$=
comwert$=@ReadCom$(com&[anzahl%],1)
@ComError(com&[anzahl%])
leswert$=str$(ord(comwert$))
wert$=wert$+leswert$
wend
drawtext 100,100, wert$
endproc
====================================================
################ Hauptschleife ###########################
whilenot ende&
settimer 10 Bestimmt die Zugriffszeiten
waitinput
killtimer
anzahl%=1
whilenot anzahl% > 6 Abfrageschleife
empfangen
inc anzahl%
wend
wend
######################## Ende Hauptschleife #####################
Schnittstellen wieder schließen
anzahl%=1
whilenot anzahl% > 6
closecom(com&[anzahl%])
inc anz wend
Hello Georg |
|
|
| |
|
|
|
Robert Hildebrand | first time Thanks you all. be now so far, I something displayed get, s. Screenshot and Source. I have now first time a interface quizzed. bring me but not yet so correctly. moreover as long as I none Klartext displayed get.
greeting
Robert
Nachtrag: Sorry, The graphic fehlte. |
|
|
| XProfan 10, WinXP prof
Robert Hildebrand | 06/09/09 ▲ |
|
|
|
|
Robert Hildebrand |
|
|
| XProfan 10, WinXP prof
Robert Hildebrand | 06/09/09 ▲ |
|
|
|
|
GDL | Hello Robert probier simply time my code 1To1 from and report.
Hello Georg |
|
|
| |
|
|