PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Datenabgleich Problem



philiph
01.10.2006, 11:08
Also ich möchte einen eingelesenen ADC Wert mit im EEPROM gespeicherten daten abgleichen leider bekomme ich beim Combilieren immer einen error 242 (Source variable does not match the target....)
mein Code:


....
Dim Pos As Byte
Dim Pos2 As Byte
Dim Pos3 As Byte
Dim V As Word
Channel As Byte
Dim L1 As Byte
Dim L As String * 2
Dim Pos As Byte
Dim Pos2 As Byte
Dim Pos3 As Byte
Dim Tempdata(35) As String * 3
Dim Eepromdata(3) As Word
Dim Y As Byte
.....
Channel = 0
V = Getadc(channel)
Readeeprom L , 1 <--Länge der gespeicherten EEPromdaten auslesen
L1 = L
Pos = 2
Pos2 = 3
Pos3 = 4
For Y = 1 To L1 <--EEprom auslesen
Tempdata(y) = Readeeprom Eepromdata(1) , Pos + Readeeprom Eepromdata(2) , Pos2 + Readeeprom Eepromdata(3) , Pos3
Pos = Pos + 3
Pos2 = Pos2 + 3
Pos3 = Pos3 + 3
Next
For Y = 1 To L1 <--vergleichen
If Tempdata(y) = Str(v) Then
Print "Match found"
End If
Next
Goto Main

x-ryder
01.10.2006, 14:59
also ich sehe auch nicht, dass ein string mit einem byte vergleichbar wäre, was willst du denn machen bzw. wie sind die daten im eeprom gespeichert? dann schreibich dirn programmausschnitt mit erklärung

Martin

philiph
01.10.2006, 15:54
DANKE =D> für das Angebot!!
Also mein Problem ist das ich möglich Werte die vom ADC kommen können mit den im EEPROM gespeicherten vergleichen will und dann die Position des Identischen Werts im EEPROM brauche.
Leider kriege ich den Vergleich ADC und EEProm wert nicht hin.
Schreib CODE:


Dim Eepdat As Integer
Dim L1 As Byte
Dim Y As Byte
...
Input L1 <-- Länge der zu schreibenen Daten
Pos = 2
Writeeeprom L1 , 1
Print L1
For Y = 1 To L1
Input Eepdat <-- zu schreibene Daten
Writeeeprom Eepdat , Pos
Pos = Pos + 3
Next
Print "Write complete"
Goto Main

Ich würde dann z.B. als erstes z.B. 10 und dann 10x ne 3stellige Zahl(ADC vergleichswert) senden. Normal ausgelesen und geprintet bekomme ich die Daten auch richtig aber halt nicht verglichen.