Forum: Mikrocontroller und Digitale Elektronik ADS1247 MUX Select


von Jens D. (jens) Benutzerseite


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe ein Problem beim Schreiben der Register.
Wenn ich Mux 0 Schreiben will und nur ein Register schreibe funktioniert 
es nicht (siehe Screenshot).
Schreibe ich jedoch mehr wie ein Register übernimmt der ADC die Daten.

Auf einer anderen Leiterplatte hatte es genau mit den Funktionen 
funktioniert und nun leider nicht mehr? Leider finde ich das Problem 
nicht.

Beim Init sende ich die

1Byte 0x07
1Byte 0x17
warte auf DRDY
1Byte 0x17
6Byte 0x40, 0x03, 0x08, 0x00, 0x00, 0x42


Hat jemand eine Idee?

Danke

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


Lesenswert?

Jens D. schrieb:
> Auf einer anderen Leiterplatte hatte es genau mit den Funktionen
> funktioniert und nun leider nicht mehr?
Auf der anderen Platine funktioniert es jetzt also auch nicht mehr, oder 
wie? Hast du was am Programm geändert? Was ist an der anderen Platine 
anders? Wie sieht das Timing im Detail aus? Hast du den richtigen 
SPI-Modus? Wie sehen die Signale in echt aus (mit dem Oszilloskop), sind 
da irgendwelche Überschwinger oder flache Flanken?

> Wenn ich Mux 0 Schreiben will und nur ein Register schreibe funktioniert
> es nicht (siehe Screenshot).
Was zeigt das Bild und was hättest du stattdessen erwartet?

von Jens D. (jens) Benutzerseite


Angehängte Dateien:

Lesenswert?

Auf der anderen ist ein anderer Controller. (STM32M7 und jetzt ein L4).

Die Signale sehen mit einem Oszi sieht relativ sauber aus. (siehe 
Screenshot)
Messwerte bekomme ich ja ausgelesen nur leider nicht ein einzelnes 
Register gesetzt.

Ich habe erwartet, dass beim auslesen des MUX Registers der zuvor 
geschriebene Kanal ausgelesen wird.
Sprich die 0x08, was bei (50µs) geschrieben wurde und nicht die 0x01 
(80µs).

Ich versuche mal die Pflanken etwas zu dämpfen.

Jens

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


Angehängte Dateien:

Lesenswert?

Jens D. schrieb:
> Ich versuche mal die Pflanken etwas zu dämpfen.
Ich vermute, du hast da eher einen Messfehler als reale Überschwinger...
Aber im Datenblatt steht was zum Thema Serienterminierung:
1
TI recommends placing 47Ω resistors in series with all digital
2
input and output pins

BTW: ich bin mir nicht ganz sicher, ob du die tsccs einhältst. Welchen 
Takt hat dein ADC? Vergleiche mal dein Timing genau mit den 
Mindesttiming aus dem Datenblatt...

: Bearbeitet durch Moderator
von Jens D. (jens) Benutzerseite


Angehängte Dateien:

Lesenswert?

Lothar M. schrieb:
> BTW: ich bin mir nicht ganz sicher, ob du die tsccs einhältst. Welchen
> Takt hat dein ADC? Vergleiche mal dein Timing genau mit den
> Mindesttiming aus dem Datenblatt...

Mist,

genau das war es danke. Im Anhang der Screenshot.
Warum es damals funktionierte keine Ahnung.

Nachtrag:
Da ich damals bei dem STM32F7 die HAL Funktionen genutzt hatte und nun 
eigene zum Schreiben / Lesen vermute ich, dass die HAL Funktion zu viel 
Zeit braucht um zum Programm zurück zu kommen.

Jens

: Bearbeitet durch User
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.