Forum: Mikrocontroller und Digitale Elektronik LTC6802-2 Batterie Monitor - SPI Probleme


von Dominik S. (domsch)


Angehängte Dateien:

Lesenswert?

Moin !

Ich weiß, dieser Chip ist schon etwas "in die Jahre" gekommen, aber man 
bekommt ihn immer noch hier und da für eine schmale Mark.

Ich möchte mit dem Chip einen einfachen Zellmonitor realisieren. 
Aufgebaut habe ich das nach dem Schaltplan im Anhang.

Also Code habe ich das hier versucht:
https://sourcelion.wordpress.com/2014/07/20/battery-management-system-ltc6802-arduino/
wie auch die Lib von hier:
https://github.com/PowerStat/LTC6802

Beide erzeugen mehr oder minder das gleiche Ergebnis. Wenn ich vom Chip 
lese, kriege ich als Ergebnis erstmal eine variierende Menge an 0xFF bis 
dann irgendwann ein Ergebnis kommt. Siehe 6802_FF_FF.jpeg
Die Settings vom Chip kann ich fast nie auslesen. Da kommt - bis auf 
wenige Ausnahmen auch immer FF FF ...

Ich habe dann versucht, den SPI Bustakt zu begrenzen. Die Beispiele 
arbeiten alle mit 1MHz und ich bin runter bis auf 125kHz. Aber auch das 
ändert nichts an dem Ergebnis.

Hat jemand mit dem LTC6802-2 schon mal ähnliche Erfahrungen gemacht? 
Vielleicht hat ja jemand einen Hinweis, ob das im Worst Case sogar so 
sein soll. Aber mir kommt das doch alles etwas merkwürdig vor.
Was ich ebenfalls an der Schaltung nicht ganz verstehe, ist der fehlende 
Massebezug. Müsste da nicht die SPI Bus "in der Luft hängen"?

Hoffe ich kriege dieses Relikt noch gebändigt :-)

Grüße Dominik

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Dominik S. schrieb:
> Wenn ich vom Chip lese, kriege ich als Ergebnis erstmal eine
> variierende Menge an 0xFF bis dann irgendwann ein Ergebnis kommt.
Ich würde da zuallererst mal mein 4-Kanal-Oszi oder den billigen 
10€-Logikanalyzer anschließen und schauen, ob das Timing auf den 4 
SPI-Leitungen dem entspricht, was der Chip laut seinem Datenblatt 
erwartet.

Hast du Zugriff auf derartige Messgeräte. Wenn nicht, dann solltest du 
dir wenigstens diesen 10€ LA beschaffen. Denn das Debuggen serieller 
Protokolle ohne solche Messmittel ist wie "Autofahren nach Gehör": immer 
wenns rumpelt, weiß man dass etwas nicht funktioniert hat. Aber man weiß 
nicht, warum.

von Wastl (hartundweichware)


Lesenswert?

Dominik S. schrieb:
> Was ich ebenfalls an der Schaltung nicht ganz verstehe, ist der fehlende
> Massebezug. Müsste da nicht die SPI Bus "in der Luft hängen"?

Das ist für mich der entscheidende Punkt. Für Andere vielleicht
nicht. Meiner Meinung nach muss der Pin V- des LTC6802 an Masse
des Arduino gelegt werden. Sonst weiss der Arduino nicht wo
und wann Low und High ist. Klar hängt sonst das SPI (nicht "die
Bus") in der Luft. Wie das auch bei dem verlinkten Maker
funktionieren soll ist mir ein Rätsel. Aber vermutlich hat er
es nur vergessen zu dokumentieren.

von Dominik S. (domsch)


Lesenswert?

Moin !

Die Signale sehen gut aus. Habe es mir mit einem 10€ LA angesehen.
Passt auch zum Datenblatt.

Tja und was soll ich sagen ... Es war die fehlende Masseverbindung.
Jetzt läuft es problemlos und auch die Settings kann ich lesen.

Erstaunlich ist aber trotzdem das ich schon einen Chip gehimmelt halbe. 
Und meine Vermutung war das es an der Masse lag. In einem Forum hab ich 
gelesen das man die nicht verbinden soll.

Tja aber nun läuft er. Danke für eure Hinweise und Hilfe !

Dominik

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.