Hallo miteinander ich habe folgendes Problem: Der ADS1178 ist ein A/D Wanndler der gleichzeitig 8 kanäle a 16 Bit Wandelt. Pro Wandlung fallen nun 8*16 = 128 Bit an Daten an die ausgelesen werden sollen. Ich möchte 128bit über die SPI Schnittstelle des MSP430F149 (Master) einlesen. Der ADS1178 wird mit dementsprechenden Mode beschaltet. Die Sampelrate beträgt 2kHz. D.h 2000*128bit = 256kBit/s die eingelesen werden müssen. Folgende Probleme stellen sich: 1.) SPI Schieberegister und Buffer des MSP430F149 sind nur 8 bit breit. 2.) Der ADS1178 hat kein CS oder CE er besitz einen Pin, an dem eine Wandlung ausgelöst werden kann. Eine erfolgreiche Wandlung wird an einem weiteren Pin mit fallender Flanke(ähnlich Interrupt) angezeigt. Danach stehen die 128 Bit zur Verfügung und können nacheinander in Abhängigkeit des SCLK Clocks ausgelesen werden. Nun meine Fragen: 1.) Kann man den SCLK Clock des MSP430F149 ausschalten um Zeit für das auslesen aus dem Empfangsbuffer zu haben? 2.) Falls die Lösung mittels SPI des MSP430F149 unmöglich ist, was wäre wenn der Takt mittels Timer hergestellt würde und die Daten über einen normalen I/O Pin des MSP430F149 eingelesen werden? Reicht die Geschwindigkeit des MSP430 getaktet mit 8Mhz aus um noch weitere "Arbeiten ausführen zu können? Zum Beispiel die Daten in einen externen Speicher zu schreiben? Wäre für eure Einschätzung und euer Fachwissen dankbar!
>Kann man den SCLK Clock des MSP430F149 ausschalten um Zeit für das >auslesen aus dem Empfangsbuffer zu haben? SCLK gibt's nur am ADS. Und der wird vom SPI CLK Ausgang vom MSP nur getaktet wenn er auch was am SPI Bus macht. > was wäre wenn der Takt mittels Timer hergestellt würde Welcher Takt?
Hab gerade mal das Datenblatt überflogen. Der SPI Modus sollte ganz gut passen. Das SYNC Signal kannst du per Timer generieren lassen, und dann wartest du auf die Low-Flanke des DRDY. Und dann sammelst du einfach deine 128 Bit ein. Musst halt dann 16 mal ein Dummy-Byte senden und jeweils 8 von den 128 Bit empfangen und aus dem Puffer holen.
Besten Dank für eure schnellen Antworten. Jetz ist mir einiges klar, ich habe etwas total falsch interpretiert. Ich bin davon ausgegangen, dass der CLK für das SPI Interface immer ansteht! Nicht nur wenn etwas gesendet bzw. empfangen werden soll. Somit sieht die Sache einfach aus! Nochmals besten Dank!
Naja, der Chip hat ja 2 Takte. Einmal CLK und einmal SPICLK. CLK muss wohl immer anliegen, weil auch die Steuersignale dazu irgendwie synchron sind. SPICLK wird wie bei jeder SPI Schnittstelle nur aktiviert, wenn auch was geschoben wird.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.