Forum: Mikrocontroller und Digitale Elektronik MCP3426 beide Kanäle nutzen


von Thomas L. (thomasnrw)


Lesenswert?

Hallo zusammen,

bin gerade etwas ratlos und hoffe auf etwas Erleuchtung.
Möchte den MCP3426 nutzen um Spannung und Strom eines Akkus zu messen. 
Da er zwei Kanäle hat sollte dies auch unproblematisch sein, dachte ich 
;)
Auf Seite 3 des Datasheeds sieht es für mich so aus als ob immer nur ein 
Kanal per Multiplexer auf den ADC geschaltet werden kann:
https://ww1.microchip.com/downloads/en/DeviceDoc/22226a.pdf

Inwieweit das Ergebnis dann in verschiedenen Registern landet und später 
per I2C gesondert abgefragt werden kann ist aus dem Datenblatt nicht zu 
entnehmen.
Das Datasheed schweigt sich zur Bedienung von zwei Kanälen leider völlig 
aus, oder ich bin zu blind.
Das Beispiel auf der Microchip Seite beschreibt die Anwendung für zwei 
Single ADC :(

Habe jetzt diverse Testmessungen gemacht und muss feststellen das es für 
mich so aussieht das immer nur auf EINEM Kanal gemessen werden kann, das 
Ergebnis dann ausgelesen werden muss und erst dann auf den anderen Kanal 
umgeschaltet werden darf.
Kanal 1 ist bei mir zur Strommesuung auf 16BIT (15 SPS) mit Gain 8 
konfiguriert. Die Messung dauert 64mS.
Kanal 2 liest die Spannung und ist 12BIT (240 SPS) mit Gain 1, ADC 
benötigt ca. 5mS.
Beide Kanäle im ONE Shot Mode.

Funktionieren tut folgende Bedienung, Zyklus 100mS:
Konvertierung Kanal 1, 70mS warten, Lesen Kanal 1, 10mS warten, Konv. 
Kanal 2, 10mS warten, Lesen Kanal 2, 10mS warten

Fehlerhaft ist folgende Bedienung:
Konvertierung Kanal 1, 70mS warten, Konv. Kanal 2, 10mS warten, Lesen 
Kanal 1, 10mS warten, Lesen Kanal 2, 10mS warten.
In diesem Fall erfolgt vor dem Lesen noch ein I2C Write mit dem 
Konfigurationsregister aber mit gelöschten RDY Bit. Zurückgegeben wird 
für Kanal das richtige Konfigreg, allerdings die ADC Werte von Kanal2.

Wäre super wenn jemand einen Tipp hat oder ggf. auch nur bestätigt das 
meine Beobachtung richtig ist.
Was ich dann aber nicht verstehe ist wie der continius Mode in 
Verbindung mit einem weiteren Kanal funktionieren soll...
vg, Thomas

von Johannes (Gast)


Lesenswert?

Im Configuration Register stellst du den Kanal ein (Seite 18), die 
Spannung an dem zugehörigen Pin kannst du dann als Conversion Result 
auslesen wenn die Wandlung erfolgt ist.

Es gibt nur einen ADC mit nur einem Ergebnisregister. Per MUX wird der 
entsprechende Input auf den ADC gegeben.

von Johannes (Gast)


Lesenswert?

Vermutlich liegt das Denkproblem darin, dass du meinst einen Baustein 
mit 4 ADCs zu haben. Schau dir die Familie an, es ist für den Hersteller 
viel günstiger den ADC aus dem 1 Input Baustein mit einem MUX zu 
verschalten als mehrere identische ADC in einen Baustein zu fertigen.

Für den User ist es meistens auch völlig gleich.

von Thomas L. (thomasnrw)


Lesenswert?

Hallo Johannes,
Danke für Deinen Beitrag, damit bestätigt sich ja meine Vermutung.
Bedeutet dann aber auch das im continius mode nur ein Kanal nutzbar ist, 
oder ?
Vg, Thomas

von wendelsberg (Gast)


Lesenswert?

Thomas L. schrieb:
> im continius mode nur ein Kanal nutzbar

So habe ich das auch verstanden und benutzt. Es existiert ja auch nur 
ein Data Register.
Allerdings hatte ich mit dem nichts zeitkritisches gemacht.

wendelsberg

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.