MSP430*248 vs. AD7793

#1409420
Lesenswert?

Hallo,

ich habe die Aufgabe bekommen mit einem externen ADC Widerstände zu 
Messen. Ich habe den AD7793 gewählt und über SPI mit meinen µC 
verbunden.

Probleme habe ich jetzt mit der Behandlung des "data-ready signal".

Meine erste Idee war das die einen Interrupt auslösen soll, aber mein 
SPI Pin kann dieses nicht.

Kann mir einer Helfen?




------------------------------------------------------------------
The DOUT/RDY pin operates as a data-ready signal also, the line going 
low when a new data-word is available in the output register. It is 
reset high when a read operation from the data register is complete. It 
also goes high prior to the updating of the data register to indicate 
when not to read from the device, to ensure that a data read is not 
attempted while the register is being updated.
#1409464
Lesenswert?

Wo ist denn jetzt Dein Problem?
Sei einfach mal ein bißchen kreativ!

Wer sagt denn, daß man(n) das DOUT/RDY-Signal nur an einen Pin des 
Controllers legen darf?
Da der Pin ja eine duale Funktion hat, kann man ihn sowohl an SPI hängen 
für die 'normale' Kommunikation und an einen maskierbaren 
Interrupt-Eingang, der in der Lage sein sollte die fallende Flanke am 
DOUT/RDY-Signal zu detektieren und daraufhin einen Interrupt auszulösen. 
Während man selbst mit dem AD7793 kommuniziert sollte man dann tunlichst 
den Interrupt-Eingang via Maske 'disablen', damit Dein µC keine 
Interrupts während dieser Zeit vom ADC akzeptiert.

Eine andere Methode wäre das Status-Register kontinuierlich zu pollen 
und SR7 (was das /RDY-Bit ist) abzufragen.
#1409543
Lesenswert?

Bergie B. schrieb:
> Das Problem ist das ich gehoft habe die spärlich vorhandenen Interrupt
> für anderes benutzen zu können. =)
>
> Ein Pollen habe ich getest, verbraucht mir aber zu viel Rechenleistung.
>
> LG Bergie

Warum Pollen oder Interrupt?
Der interne Oszillator des AD7793 ist genau und stabil genug, um die 
Wandlungen einfach per Timer alle x-Millisekunden (mit entsprechenden 
Reserven) starten zu können (bzw. die Ergebnisse auszulesen).
#1409556
Lesenswert?

Arc Net schrieb:
> Warum Pollen oder Interrupt?
> Der interne Oszillator des AD7793 ist genau und stabil genug, um die
> Wandlungen einfach per Timer alle x-Millisekunden (mit entsprechenden
> Reserven) starten zu können (bzw. die Ergebnisse auszulesen).

Kann man auch machen. Nur dann sollte man tunlichst nicht den 
"Continuous Conversion Mode", der auch noch der Default-Mode ist, 
wählen, sondern den "Single Conversion Mode" - dann gibt es jedenfalls 
keine Probleme, das der ADC und der µC asynchron zueinander werden 
können, und man kann den Timer zur 'Ablaufsteuerung' mißbrauchen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren