PIC18 - AD-Wandler

Gast #2828757
Lesenswert?
• ▲
▼
Hallo,

ich habe einen PIC 18f und will damit eine analoge Spannung einlesen von 
0...10V welche ich davor auf 0...5V herunterteile.

Vref- ist GND und Vref+ ist +5V.

lege ich 0V an, dann lese ich einen ADC Wert von 0xFFF4
lege ich 5V an dann lese ich einen ADC Wert von 0x0770
bei 2,5V ist der ADC Wert 0x0338
bei 1V ist der ADC Wert 0x00CB

es ist ein 12Bit wandler, also maximal 4095, würde bei 5V analogspannung 
von 2048 machen, aber ich lese nur 1904 ein.

woran kann das liegen? mit einem multimeter messer ich die jeweilige 
spannung an dem eingang.

kann mit jemand helfen? danke
Gast #2828822
Lesenswert?
• ▲
▼
der spannungsteiler sind zwei 10k ohm widerstände.

die Funktion sieht wie folgt aus:
word ADConvert(byte bChannel)
{
  byte i;
  word wResult;
  word wTemp;

  wResult = 0;
  for(i=0;i<8;i++)
  {
    ADCON0bits.GO_DONE = 1;            while(ADCON0bits.GO_DONE);
    wTemp = ADRESH;
    wTemp <<= 8;
    wTemp += ADRESL;
    wResult += wTemp;
  }
  wResult >>= 3;
  return(wResult);
}
Gast #2829052
Lesenswert?
• ▲
▼
aber zwischen spannungsteiler und mikrocontroller habe ich noch einen 
operationsverstärker als impedanzwandler, sein ausgangswiederstand ist 
ja sehr gering.

an die zeit hab ich auch schon gedacht, hab sie schon verändert aber 
keine verbesserung feststellen können
#2829121
Lesenswert?
• ▲
▼
bastler schrieb:
> aber zwischen spannungsteiler und mikrocontroller habe ich noch einen
> operationsverstärker als impedanzwandler, sein ausgangswiederstand ist
> ja sehr gering.

Diese Information ist neu! :-)
Und die Spannung hinter dem OP stimmt genau?
Wie gut ist die Versorgungsspannung am µC gepuffert und geblockt, diese 
wird ja als Referenz benutzt?!

Welchen PIC18F benutzt Du denn?
Gast #2829269
Lesenswert?
• ▲
▼
sry das ich diese info verschwiegen habe.

die versorgung ist eigentlich an einigen kondensatoren angeschlossen. 
und ja die versorgung wird momentan als referenz benutz, will aber eine 
andere quelle als referenz noch mit einbauen. könnte diese der grund 
sein das die ad wandlung nicht stimmt?

ich benutz den pic18f65k22
Gast #2829640
Lesenswert?
• ▲
▼
Schau mal kurz ins Errata :o) Ich habe mir auch so einen "unbrauchbaren" 
Klotz ans Bein geschnallt. Bei meinem Derivat ists aber noch schlimmer, 
da können AD Kanäle mal einfach nicht funktionieren. Welche... ist bei 
jedem Chip anders, aber Microchip will partout das Silizium nicht 
anpassen...

Habs bei Dir nur kurz überflogen, aber stand was von bis zu 50LSB Offset 
Error ect.

Gruss

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.