Hi ,
Brauch dringend hilfe ....
Und zwar gehts um das 10 bit datenerfassungssystem von conrad
mit dem ltc 1090 chip . Vielleicht kennt das wer von euch !
Also ich hab folgendes problem - ich hab den source code zum ansprechen des 10 bit datenerfassungssystems , nur ich brauch den code in c .
So nun zum code , zum teil kapier ich ja was passiert nur
bei den ports häng ich . Ich weis nicht was ich an den welchen port ausgeben muss um zb RTS auf null zu setzen , oder DTR bzw CTS .
Vielleicht kann mir ja da wer helfen .
Danke schon mal
lg
Igor_b
Code:DECLARE FUNCTION GetMesswert! (Kanal!, Durchlauf!) 'Bildschirm vorbereiten CLS LOCATE 25, 13: PRINT "mV"; LOCATE , 35: PRINT "0 1 2 3 4 5 Volt"; LOCATE 1, 1 'Beginn der Endlosschleife DO 'Meáwertabfrage vom AD-Wandler MilliVolt = GetMesswert(1, 1) 'Spannungswert auf den Bildschirm schreiben LOCATE , 10: PRINT USING "#####"; MilliVolt; 'Spannung als Leuchtpunkt ausgeben LOCATE , 35 + (MilliVolt / 125): PRINT "Ü" 'Wiederhole die Messungen bis eine Taste gedrckt wird LOOP WHILE INKEY$ = "" 'Programm beenden END FUNCTION GetMesswert (Kanal, Durchlauf) DIM AdressePort(4) AdressePort(1) = &H3F8: AdressePort(2) = &H2F8 AdressePort(3) = &H3E8: AdressePort(4) = &H2E8 Port = 1 Referenz! = 5# PC.Speed& = 0 MaxBitWert = 2048 SELECT CASE Kanal CASE 1 Kanal$ = "100011101111" CASE 2 Kanal$ = "110011101111" CASE 3 Kanal$ = "100111101111" CASE 4 Kanal$ = "110111101111" CASE 5 Kanal$ = "101011101111" CASE 6 Kanal$ = "111011101111" CASE 7 Kanal$ = "101111101111" CASE 8 Kanal$ = "111111101111" END SELECT Messaddition& = 0 FOR Messung = 0 TO Durchlauf Messchritt = 0 BitWert = MaxBitWert FOR i = 1 TO 12 OUT AdressePort(Port) + 4, (&HFE AND INP(AdressePort(Port) + 4)) IF MID$(Kanal$, i, 1) = "0" THEN OUT AdressePort(Port) + 4, (&HFD AND INP(AdressePort(Port) + 4)) ELSE OUT AdressePort(Port) + 4, (&H2 OR INP(AdressePort(Port) + 4)) END IF OUT AdressePort(Port) + 4, (&H1 OR INP(AdressePort(Port) + 4)) IF (INP(AdressePort(Port) + 6) AND 16) = 16 THEN ELSE Messchritt = Messchritt + BitWert END IF BitWert = BitWert / 2 NEXT i OUT AdressePort(Port) + 4, (&HFD AND INP(AdressePort(Port) + 4)) OUT AdressePort(Port) + 4, (&H2 OR INP(AdressePort(Port) + 4)) FOR Warten& = 1 TO PC.Speed&: NEXT Warten& IF Messung > 0 THEN Messaddition& = Messaddition& + Messchritt END IF NEXT Messung Messchritt = (Messaddition& / Durchlauf) GetMesswert = Messchritt / 4.095 * Referenz! END FUNCTION







Zitieren

Lesezeichen