Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Re: ACD einlesen Kategorie: CC-Pro Unit & Appl.Board (von Christian - 19.08.2010 22:08)
Als Antwort auf Re: ACD einlesen von tomsfinest - 13.08.2010 10:24
Ich nutze:
C-Control Pro Mega128
> > > > Hallo,
> > > >
> > > > ich habe das Projektboard Mega128. Am ADC Port4 lese ich beim Start den Wert eines Potis
> > > > als Nullabgleich ein. Dort erhalte ich z.B. den Wert 730 zurück.
> > > > Später im eigentlichen Programm (in der Interruptrotine Timer_0 alle 10ms) bekomme ich den Wert ca. 520.
> > > >
> > > > Die 520 sind aber auch normal.
> > > >
> > > > Warum wird im Sub Main ein anderer Wert eingelesen als in der Interruptrotine?
> > > >
> > > > Der Wert wird wie folgt eingelesen.
> > > >
> > > > Dim Buf as Integer
> > > > ADC_Set(0xC0,4)  'Port4 - Refspannung 2,56V
> > > > Buf = ADC_Read()
> > > >
> > > > Bei den Anderen Port benutze ich auch die anderen Referenzspannungen
> > > > VCC '5V
> > > > Ext ca. 2,8V
> > > >
> > > > Was ist im Sub-Main anders als in der Interruptrotine?
> > > >
> > > >
> > > > 2. Frage: Bei dem Projektboard bekomme ich in der Interruptrotine keine Debug mehr hin.
> > > >    Der Debugmode funktioniert nur beim Start in der Sub-Main bevor der Timer_0 gestartet wird.
> > > >
> > > > Gruss Christian
> > >
> > > Hallo,
> > >
> > > Der Wert, den der AD Wandler zurückgibt, errechnet sich wie folgt:
> > >
> > > Die Aüflösung des Wandlers ist Uref/1024
> > > Der Messwert ist also Uref/Umess*1024
> > >
> > > Wenn Du mit verschiedenen Referenzen arbeitest, bekommst Du natürlich auch verschiedene Messwerte!!
> > >
> > > Mit dem Debug kann ich Dir leider auch nicht helfen.
> > >
> > > Grüsse Tom
-----------------------------------------------------------------------------------------------------------------

Hallo Tom,
danke für die Antwort. Leider wusste ich das schon und bringt mich so nicht weiter.

Ich habe jetzt folgendes festgestellt.
Wenn ich ADC_Read() 2x hintereinander aufrufe sind die Werte dann Normal.
z.b.
Dim Buf as Integer
Dim Buf1 as Integer
 ADC_Set(ADC_VREF_BG,4)  'Port4 - Refspannung 2,56V
 Buf = ADC_Read()
 Buf = ADC_Read()
 ADC_Set(ADC_VREF_VCC,1)  'Port4 - Refspannung 5,00V
 Buf1 = ADC_Read()
 Buf1 = ADC_Read()

Ich hatte vorher ein Applikationboard, dort braucht ich nur einmal ADC_Read aufrufen.
Der einzige grosse Unterschied zwischen diesen beiden Boards ist der Kondensator am Aref.
Beim Applikationboard ist dieser in der SMD Bauform und beim Projektboard als Tropfenform ausgeführt.
Kann es sein das der Kondensator mir die Probleme auslöst. Ich habe auch das gefühl das die Werte schwanken.
So ein Kondensator braucht ja auch eine gewisse Zeit, eh er geladen/entladen ist.
Ich hatte mir die gleiche Schaltung aufgebaut mit dem selben Sensoren.

Gruss Christian





    Antwort schreiben


Antworten:

Re: ACD einlesen (von Torsten - 20.08.2010 9:01)
    Re: ACD einlesen (von tomsfinest - 21.08.2010 12:34)
        Re: ACD einlesen (von Christian - 21.08.2010 23:29)