2097152 = 2^21 (also 22bit minus Vorzeichen). Gut ich kann den Wert auf
2^20 ändern und bekomme richtige Ergebnisse.
Um Fehler in der Ansteuerung des MCP3551 auszuschließen, habe ich den
MCP3551 mal schnell über ein Arduino mit Library angesprochen und das
selbe Ergebnis erhalten.
Anbei auch das Schema, der TC2014 liefert 3V. Und VCC ist 5V.
Irgendwelche Ideen? Danke, euch.
Nein, J2-1 ist auf dem selben Potential wie J2-2. Es macht keinen
Unterschied och ich einen Widerstand mit 2-Leiter, 3-Leiter oder
4-Leiter Verdrahtung anschließe (Lötjumper SJ1 & SJ2 entsprechend
gesetzt).
Hallo,
wenn du zwischen deinen Eingängen im 4-Leiter Betrieb einen
niederohmigen Widerstand (PT100..PT1000) schaltest, hast du zwischen den
beiden 6,8k Widerständen 1,5V Volt und nicht 3 Volt. Also nur die Hälfte
(Spannungsteiler). Messe mal die Spannung an VREF mit einem
Messinstrument. Damit stimmt dein Ergebnis!
In deiner Messung wird der Spannungsteiler aktiv mit einbezogen!
Nachweislich bei mir ok: 22 Bit bei 2,5V Ref
sprintf(disp_ausgabe,"U %.02f V",(mcp3531_value * (2.5/2097152.0)));
Gruß G.G.
Hi,
da der Thread ja noch nicht so alt ist, und ich ein ähnliches Problem
habe, mache ich mal nicht extra einen neuen auf.
Und zwar weiß ich nicht, ob mein IC kaputt ist, oder ich einfach
irgendwas falsch mache. Ich habe die Schaltung aus der Appnote s.o.
nachgebaut und statt des PT100 erstmal einen 100Ohm 0.1% Widerstand
eingesetzt.
Versorgungsspannung vom Arduino Uno, mein Messgerät zeigt mir da 5,3V,
kann aber auch am Messgerät liegen. Die Versorgungsspannung habe ich
auch als VREF benutzt, da liegt dann durch den Spannungsteiler 2,65.
Benutze ich die Formel aus der Appnote, kommt ein Wert ~210Ohm raus.
Passe ich jetzt RA an, Wert: 84xx.x, dann bekomme ich auch 100Ohm raus.
Auch mit dem PT100 bekomme ich einen Wert. Schließe ich einen 169Ohm
Widerstand an, wird der auch relativ genau berechnet. Aber der RA Wert
ist ja deutlich zu groß.
Jetzt habe ich mir gedacht, dass ich für Vref nochmal einen
Spannungsregler anschließe, der 2V ausgibt, womit dann zwischen VREF und
GND 1V gemessen werden. Das beeinflusst jetzt natürlich auch mein
Ergebnis, obwohl VREF ja nicht in der Formel vorkommt. Aber logisch ist
es ja, da sich ja dadurch ja die Auflösung ändert.
Da liegt mein erstes Problem, ich kann nicht so recht nachvollziehen,
wie ich dann die Berechnung durchführen muss.
Mein zweites Problem: ändere ich die Versorgungsspannung vom IC von 5V
auf 3.3V, ändert sich mein Ergebnis auch. Das sollte doch nun wirklich
nicht passieren.
TL/DR: Ist mein IC einfach nur kaputt? Dann frage ich mich, wieso da
trotzdem mit einer leichten Formelanpassung trotzdem plausible
Ergebnisse rauskommen.
Ich hoffe, ich konnte mein Problem gut genug erläutern. Ich fange grade
erst an, mich mit dem Thema zu beschäftigen.
Ach, so langsam verstehe ich, was da passiert. Wenn ich einfach die
Formel aus der Appnote benutzen möchte, brauche ich auch die 100%
gleichen Umgebungsbedingungen, sonst muss ich anpassen?
Auf dem Papier habe ich jetzt die Spannung ausgerechnet, die an Pins 1+4
und 2+3 anliegen muss.
Ist das richtig?
Weiterhin ist meine Auflösung
Wenn ich diesen Wert mit dem Code, den mir der IC ausspuckt
multipliziere, bekomme ich die Spannung U23?
Hi,
ich muss das hier nochmal pushen, da ich ein neues Problem habe, dass
mit dem Titel 100% übereinstimmt.
Statt der PT100 Schaltung habe ich bei VREF 5V anliegen. An VIN+ ~1,65V
und VIN- liegt auf GND.
Obwohl ich da jetzt keinen Spannungsteiler habe, liefert mir der ADC
auch ein halbes Ergebnis. Wenn ich die Anschlüsse durchmesse, liegen die
angegeben Werte an, nur bei der Berechnung kommt der halbe Wert raus.
Rechnung:
Ich antworte mir hier mal selber...im Microchip-Forum kam der Hinweis
auf den SPI-Mode. Tatsächlich erscheint das richtige Ergebnis, wenn man
SPI-Mode3 nimmt, also 1-1...
Hallo,
schau dir mal das Datenblatt an:
Punkt 5.5
In SPI mode 1,1, data is read using only 24 clocks or
three byte transfers. The data ready bit must be read
by testing the SDO/RDY line prior to a falling edge of
the clock.
In SPI mode 0,0, data is read using 25 clocks or four
byte transfers. Please note that the data ready bit is
included in the transfer as the first bit in this mode.
Das Ergebnis ist in beiden Fällen gleich(bit 0-21).
Wichtig!
Einmal werden 3 Byte und eimal 4 Byte ausgewertet.
Du verschluckst irgend wie das bit 0.. und schon hast du das halbe
Ergebnis!
Schau dir das nochmals an.
Gruß G.G.
Wow, danke. Das ist doch mal ein echt hilfreicher Hinweis.
Das habe ich die ganze Zeit stur überlesen.
Danke!
Das kommt davon, wenn man einfach irgendwas aus dem Internet übernimmt
:D
Zum Glück muss ich mir für meine Arbeit auch noch eigene Gedanken
machen, sodass mir andere Fehler da schon aufgefallen sind.