Hallo! Ich versuche gerade mit einem STM32 im Master-Mode einen A/D Wandler über SPI auszulesen. Dabei habe ich das Problem, daß der A/D Wandler die Daten an MISO der CPU schickt, sobald ein Clock-Signal angelegt wird. Im Grunde ist das auch in Ordnung nur fährt der STM32 auf der SCK Leitung ein permanenten Takt sodaß die Daten nicht richtig empfangen werden. Der A/D-Wandler signalisiert derzeit durch eine fallende Flanke daß die Wandlung fertig ist. Damit wird ein Interrupt ausgelöst der dann das SPI-Modul in der CPU aktivieren soll. Nach dem Einlesen von 16 Bit ist der Transfer abgeschlossen, der Clock sollte wieder abgeschalten werden (um die aktuell laufende Wandlung nicht zu stören) Es mag sein daß ich die Fülle von Funktionen des STM32 noch nicht überblickt habe oder ich einem Denkfehler ausgesessen bin. Ich bin für jeden Tipp dankbar. Codeausschnitte habe ich absichtlich noch nicht mitgeschickt da sich diese im jetzt-Stand nicht als Diskussionsgrundlage eignen. Feedback arbeite ich in den aktuellen Code ein und poste dann Code-Ausschnitte und Testergebnisse. Grüße, Bernhard
Problem gelöst. Es muss der Master-Mode "SPI_Direction_2Lines_FullDuplex" verwendet werden. Per default wird kein Clock gesendet, erst beim Senden eines Datenbyte an den Slave mit "SPI_I2S_SendData(SPI1, 0x00);" wird der Takt ausgegeben und die Eingangsdaten eingelesen. Grüße, Bernhard
Hallo Bernhard L. R., ich versuche den A/D MCP3551 auszulesen mit einem STM32F100RB. Bei mir klappt es leider garnicht. Könnten Sie die Code-Ausschnitte posten? Das wäre klasse! Danke Gruß Daniel
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.