Hallo, ich habe wie viele andere den Umstieg von AVR auf STM32 gewagt und mir ein STM32F4 Discovery Board zugelegt. GPIO, Usart und System Timer habe ich auch relativ fix zum Laufen bekommen. Probleme bereitet mir allerdings die SPI-Schnittstelle beziehungsweise das Auslesen des Beschleunigungssensor auf der Platine. Ich bekomme beim Auslesen nur eine 0 von dem SPI-Bus ausgegeben, jedoch keine gültigen Daten. Kann jemand kurz über meinen Code schauen und mir einen Denkanstoß geben? Vielen Dank für die Bemühungen. Paul
Schau dir das Demoprogramm an. Dort kann man alles schön nachvollziehen.
RCC_AHB2PeriphClockCmd(RCC_APB2Periph_SPI1, ENABLE); Und jetzt mal GANZ GENAU HINSEHEN.
dummy schrieb: > RCC_AHB2PeriphClockCmd(RCC_APB2Periph_SPI1, ENABLE); > > Und jetzt mal GANZ GENAU HINSEHEN. Schade, dass wars nicht (zumindest nicht alleine). Dann werde ich mir die anderen Quellen mal genauer ansehen. Vielen Dank!
Hallo Paul! Ich werde diesen Sensor auch in meinem Projekt verwenden. Bin gerade am tüfteln, wie ich den Gyro nützen und Programmieren kann. Hat es bei dir schon geklappt? Hast du deinen Fehler schon gefunden? LG Imkant
Hallo, ich arbeite mich gerade wieder mit einem STM32F4-Discovery Board in die embedded Programmierung ein und habe mich dabei auch an diesem Beispiel versucht. Es gibt unter https://www.youtube.com/watch?v=7vlEDkYk140 ein (funktionierendes) Videotutorial und in der Beschreibung einen Link zum Quellcode (https://www.dropbox.com/s/4ccxrbzy0k66dtf/main.c?dl=0). Darin wird der SPI-Port anders konfiguriert (nur 8-bit Diagrammlänge) und die Funktionen für Senden und Empfangen sind anders aufgebaut. Um sicherzugehen, dass der Gyro (LIS3DSH) mit mir spricht, habe ich erstmal die Register 0x0D, 0x0E und 0x0C ausgelesen, welche (beim LIS3DSH)die Werte 0x21, 0x00 und die Temperatur beeinhalten (Siehe Application Note 26768 im Kapitel Register Description).
Ich befürchte, daß das der Hinweis nach drei-einhalb Jahren etwas zu spät kommt.
Für Paul schon ist die Antwort zu spät, für zukünftige Leser aber nicht.
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.