Hallo liebe Gemeinde,
hat jemand schon die Erfahrung mit digitalen Potentiometern sammeln können?
Habe mir jetzt Testboards mit versch. Modellen gelötet, um diese auszutesten.
Da wären z.B. die Modelle AD5280 und sein 2-kanäliger Verwandter AD5282.
Bei beiden ist am Anschluss A (über einen strombegrenzenden Widerstand) 15V angeschlossen, B liegt auf GND.
Es wird die Spannung UWB gemessen. Während es beim AD5282 reibungslos funktioniert, habe ich mit dem AD5280 so meine Probleme.
Und zwar: Der Wiper (W) geht nicht über eine Spannung von 8,09V. Das entspricht dem Inhalt des RDAC-Registers von 141. Somit fallen irgendwelche Variablenüberläufe etc. aus. (bei über 127 bei signed 8-bit-Variablen)
Habe schon auf die Standardbibliotheken zurückgegriffen (Peter Fleury), hilft aber alles nichts.
In dem einfachen Code setze ich das RDAC-Register einfach auf höhere Werte als 141 (hier 250). Hilfts aber alles nichts. Die Spannung bleibt bei 8V. Das InstructionByte ist dabei 0x00.Code:i2c_start_wait(twiAddrDevice+I2C_WRITE); i2c_write(TWI_INSTRUCTION_BYTE); i2c_write(250); i2c_stop();
Weiß jemand mir auf die Sprünge zu helfen?
Danke im Voraus.
Geändert von Liquidator (14.06.2016 um 00:24 Uhr)
Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?
Für die Logik verwende ich 5V, die Betriebsspannung beträgt 15V.
Mit den Werten liege ich innerhalb meiner Betriebsspannung (also 0...14.7V). Bloß komme ich nicht bis zu den erwähnten 14.7V...
Echt keiner?
Habe jetzt noch Folgendes getestet und gemessen:
- Die Spannung an A beträgt auch wirklich 14,7V. (Die Versorgungsspannung ist bei 15V)
- Die I²C-Frequenz spielt keine Rolle und wird korrekt erkannt (testhalber sogar bis 950kHz)
- Habe den Bus näher am Oszilloskop untersucht. Es stimmt alles. Die Adresse, das folgende Acknowledge, das darauffolgende Statusbyte, ein weiteres Aknowledge und schlussendlich das DataByte selbst (gefolgt von einem Nack).
Heißt also: Das IC bekommt alle korrekten Informationen.
Da könnte man glatt auf den Gedanken kommen, dass der Chip hinüber ist. Hast du einen zweiten AD5282 zum Vergleich (oder schon verglichen)?
Die Platine mit dem AD5282 funktioniert ja. Es geht um den fast baugleichen AD5280. Ich habe drei gleiche Testplatinen für den AD5280 bestellt und diese sind bereits alle bestückt, um einen Bauteildefekt auszuschließen. Funktioniert leider nach wie vor nicht, bei keinem aus der AD5280-Reihe. Also liegt ein systematischer Fehler vor. Oder ich sehe den Wald vor lauter Bäumen nicht mehr.
Sorry, hab nicht richtig gelesen.
Liefert die fragliche Spezies denn unterhalb von 141 proportionale Ausgangsspannungen? Welchen Nennwert hat sie, also R_AB
Ist auch garantiert nicht der rehostatische sondern der potentiometrische Mode aktiv? Würde das mit Schutzwiderstand und Nennwert des Chips als Spannungsteiler zusammenpassen?
Schaltungsfehler oder Lötpanne ist ausgeschlossen?
Ja, mit den Spannungen kleiner Registerinhalt 141 passt es hundertprozentig.
Mein aktuelles Testprogramm:
Lötfehler auf allen drei Testplatinen halte ich eher für unwahrscheinlich. Aber auch alle Kontakte auf korrekte Verbindung geprüft.Code:const uint32_t I2C_DIGIPOT_1 = 200000; // Nennwert des Widerstandes (nominell) const uint16_t Rlim = 3700; // strombegrenzender Widerstand const uint8_t Rw = 60; // Widerstand des Wipers i2c_start_wait(TWI_ADDR_DIGIPOT_1+I2C_READ); regRDAC1 = i2c_readNak(); i2c_stop(); // Aktuell eingestellten Widerstandswert berechnen, anhand des vorhandenen ausgelesenen RDAC-Registerinhalt digiRes = (uint32_t) (regRDAC1 + I2C_DIGIPOT_1) / 256.0 + Rw; // Die abfallende Spannung RWB berechnen digiVoltage_mV = (uint32_t) (1000.0*digiRes*15) / (Rlim + I2C_DIGIPOT_1);
Schaltungsfehler... Keine Ahnung, die Logikspannung ist eben 5V (Sowie auch !SHDN-Pin), die Versorgung beträgt 15V, Masse ist auf GND, sowie auch die negative Versorgung.
Am Punkt A kommen wegen des Rlim keine vollständigen 15V mehr an und damit liege ich innerhalb der Betriebsspannung.
Ähm... muss man diesen explizit einstellen? *zum Datenblatt hinlauf*Ist auch garantiert nicht der rehostatische sondern der potentiometrische Mode aktiv?
P.S.: Das Programm folgt also nach dem Codeschnipsel oben (wo der Wert zum Potentiometer übertragen wird). Hier ist die Ausleseprozedur und die Konvertierung nach mV dargestellt.
- - - Aktualisiert - - -
Ergänzung: Habe soeben noch die "Power Up Sequence" laut Datenblatt beachtet. Durch ein RC-Verzögerungsglied habe ich die Spannung am Punkt A später ansteigen lassen als die Betriebsspannung. Ebenfalls ohne Erfolg. Die abfallende Spannung RWB bleibt bei den 8V
Hallo,
Das kann jetzt auch schon zu spät sein!
Das Problem sind interne Dioden, hier vor allem dir Schutzdioden an den Eingängen.
Jetzt kommt es darauf woher die Logik-Signale stammen.
Kurzzeitig verkraften die Dioden hier 20mA, dauerhaft 5mA.
Ist eigentlich kein Problem wenn die Signale von einem Logik-Gatter stammen, aber wenn man zum Testen da eine Schalter einsetzt, sollte noch ein Widerstand in Serie.
Bei manchen ICs mit mehreren Spannungen, darf die höhere Spannung nie kleiner als die Niedrige Spannung sein, weil sonst die restliche Schaltung, welche noch an der höheren Spannung hängt, über die internen Dioden mit Strom versorgt wird. Praktisch reicht da aber eine (Schottky-)Diode zwischen den Spannungen aus um diese Bedingung einzuhalten.
Eine Möglichkeit bei Chinaware ist noch, dass nicht immer das im IC drin ist, was aussen drauf steht
Es gibt da eine regelrechte Fälscher-Mafia. Da werden ICs über offenem Feuer ausgelötet, aufpoliert. manchmal neu gestempelt, und als Neuware verkauft. Hinzu kommt noch, dass die auch ihre eigenen Landsleute übers Ohr hauen.
SHDN verbunden wird.
Du hast ja etwas fertiges gekauft, wie sind die Schaltpläne genau?
Im Datenblatt ist da noch ein Trick für ein sicheres hochfahren angegeben, indem Ox mit
Da der AD5280 14 Pins und der AD5282 16 Pins hat, müssen das unterschiedliche Leiterplatten sein.
MfG Peter(TOO)
Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?
Ich fürchte, du hast den Satz nicht zu Ende geschrieben. Oder mir entgeht bisschen der Sinn
Das sind auch verschiedene Leiterplatten. Ich habe sie selbst gezeichnet und herstellen lassen. Hier der interessante Ausschnitt des Schaltplans.
Und nein, da ist keine Ware aus China, weder die Platine noch das Bauteil.
Danke, dass ihr zu helfen versucht Leute![]()
Lesezeichen