Forum: Mikrocontroller und Digitale Elektronik STM32 F10x CPAL Einbinden


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Kai G. (dr_evil)


Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich habe ein STM32 Nucleo Board mit dem STM32 F103RB Prozessor.
Ich würde gern die CPAL LIB mit einbinden und könnte ein wenig 
Starthilfe gebrauchen, da ich auf diesem Gebiet nicht so richtig firm 
bin.
Ich habe mir die entsprechenden Daten von ST runter geladen 
(STSW-STM32127).

Das Endziel soll sein, einen 3D - Magnetfeldsensor von Infineon 
einzubinden via I²C. Und im ersten Step muss ich natürlich erstmal die 
Schnittstelle als solche in Betrieb nehmen. Ich habe in dem Usermanual 
was dazugehört leider zum Einbinden nicht so recht etwas finden können.

es Gibt ein Video online was das Einrichten von Eclipse mit der ARM 
Umgebung anschaulich erklärt. Ähnlich habe ich versucht vorzugehen, bin 
allerdings nicht sicher ob das so der richtige Weg ist.

Falls mir jemand ein kurzes How- To zur VErfügung stellen könnte, wäre 
das super.

von Kai G. (dr_evil)


Bewertung
0 lesenswert
nicht lesenswert
Oder andersherum gefragt:

Ist es überhapt notwendig die CPAL Lib zu benutzen, wenn Cube F1 
Installiert habe? Oder kann ich das dann direkt in einem Programm 
initialisieren?

von pegel (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ich denke du solltest erst einmal festlegen wie du es machen möchtest.

In der CPAL Lib ist ja wie bei ST üblich auch ein Beispiel enthalten auf 
das man aufbauen kann.

Genau so ist es in der HAL Lib oder der Std Lib.

Soll es schnell und einfach funktionieren? Dann HAL.

Willst du alles genau erkunden und verstehen, dann ist Fleißarbeit mit 
den Libs oder Registern angesagt.

von Dr_evil (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Also ich habe bisher nur mit Atmel Controllern gearbeitet und komme 
damit auch halbwegs gut zurecht. Dieses Projekt mit dem ARM ist im 
Rahmen eines Studienmoduls entstanden. Da die Uhr tickt und es bis zu 
einem funktionierenden 3D Sensor noch eine ganze Ecke hin ist, wäre es 
gut, es würde schnell und „einfach“ gehen.
Ich denke aus persönlichem Antrieb würde ich das im Anschluss auf dem 
anderen Wege versuchen.

Also Tipps wie ich hier am besten weiterkomme sind sehr willkommen.
Und Danke vorab

von pegel (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ist ein Display vorgesehen? Vielleicht sogar I2C?
Dann würde ich damit beginnen.

von Dr_evil (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Darüber nachgedacht haben wir mal, ja.
Ideal wäre das als Ergänzung um uns direkt die Daten des Sensors 
anzeigen zu lassen. Aber fest eingeplant ist das nicht. Eine Option 
eben. Eine Empfehlung fpr ein bestimmtes Modell?
Vielleich sollte ich noch ergänzen erwähnen, dass das ganze nicht in 
einer art „Arduino Umgebung“ sondern in Eclipse passieren, aber für den 
Hobbymäßigen Anwender verständlich und nachvollziehbar sein soll.

von pegel (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Meine Konfiguration:

STM32CubeMX -> SW4STM32

einfache Display:

SSD1306 und ST7735

Damit hat man erst mal alles was man als Grundlage braucht.

von Dr. Sommer (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Im Reference Manual ist die I2C Peripherie detailliert  beschrieben. 
Leider ist es so, dass bei den alten STM32 Controllern (F1, F2, F4) das 
I2C Modul ziemlich dumm ist und man viel in Software machen muss. Mit 
der HAL geht das relativ einfach, aber nur synchron. Wenn das für dich 
reicht, mach das so. Wenn nicht (und du asynchron mit Interrupts 
arbeiten möchtest), würde ich empfehlen mal nach den neueren Controllern 
zu schauen (F0, L0, L1, F3, F7). Die haben ein besseres I2C Modul das 
sowohl synchron als auch asynchron sehr einfach zu nutzen ist, ob mit 
HAL oder ohne, zumindest so lange man Max. 256 Bytes am Stück überträgt. 
Das neue Modul erkennst du daran, dass es ein NBYTES Feld hat (einfach 
im Reference Manual danach suchen). Damit kannst du auch asynchrone 
Übertragung mit ca. 10 Zeilen abhandeln, selbst mit direkten Register 
Zugriffen. Externe Libraries wie CPAL machen das ganze eher 
komplizierter als einfacher.

von Dr_evil (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Okay.
Super, vielen Dank erstmal. Ich würde das in Richtung Wochenende mal 
ausprobieren und dann ggf. Nochmal auf euch zurück kommen. Danke :)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.