Re: Routine für serielle AD-Wandler Kategorie: Sonstige Hardware (von Marcel - 25.03.2008 18:21) | ||
Als Antwort auf Routine für serielle AD-Wandler von Tobias - 25.03.2008 16:34 | ||
| ||
Hallo Tobias, ich habe hier eine Routine für den MAX127. Vielleicht hilft dir das weiter. Gru� Marcel '------------------------------------------------- ' ADWert von MAX 127 einlesen ' Adr= Adresse (I²C) ' Range= Bereich siehe Datenblatt ' Channel= Channel ,der ausgelesen werden soll '------------------------------------------------- Sub Max127(Adr As Byte, Range As Byte, Channel As Byte) As Single Dim RangeChannel As Byte Dim ADs As Single RangeChannel=128 If Range=1 Then RangeChannel=136 ElseIf Range=2 Then RangeChannel=132 ElseIf Range=3 Then RangeChannel=140 Else RangeChannel=128 End If If Channel=1 Or Channel=3 Or Channel=5 Or Channel=7 Then RangeChannel=RangeChannel+16 End If If Channel=2 Or Channel=3 Or Channel=6 Or Channel=7 Then RangeChannel=RangeChannel+32 End If If Channel=4 Or Channel=5 Or Channel=6 Or Channel=7 Then RangeChannel=RangeChannel+64 End If I2C_Start() I2C_Write(Adr) I2C_Write(RangeChannel) I2C_Stop() I2C_Start() I2C_Write(Adr+1) a=I2C_Read_ACK() b=I2C_Read_ACK() I2C_Stop() b=b>>4 a=a*16+b ADs=a If Range=0 Then ADs=(ADs*5)/4096 ElseIf Range=1 Then ADs=(ADs*10)/4096 ElseIf Range=2 And ADs<2048 Then ADs=(ADs*10)/4096 ElseIf Range=2 And ADs>2048 Then ADs=((4096-ADs)*10)/4096 ADs=ADs*(-1) ElseIf Range=3 And ADs<2048 Then ADs=(ADs*20)/4096 ElseIf Range=3 And ADs>2048 Then ADs=((4096-ADs)*20)/4096 ADs=ADs*(-1) End If Return ADs End Sub > Hallo, > > hat vielleicht schon einmal einer eine Routine für einen seriellen AD-Wandler, wie z.B. den MAX1148 > geschrieben? Gerne auch andere Typen. Wichtig wären mir nur 14 BIT und min. vier differentielle > Eingänge, 0-5 oder 0-10V. > > Einen I²C-Typen mit differentiellen Eingängen habe ich leider nicht gefunden. Ich denke da wäre > die Umsetzung einer Software mit den fertigen I²C-Routinen schneller realisiert. > > Freue mich über jeden Hinweis, ob Routine oder vielleicht doch einen I²C-Wandler, den ich übersehen > hab. > > MfG Tobias | ||
Antwort schreiben Antworten: Re: Routine für serielle AD-Wandler (von Tobias - 26.03.2008 17:24) |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum