Forum: Mikrocontroller und Digitale Elektronik µC Setup via I²C / UART


von Gabriel H. (gabo)


Angehängte Dateien:

Lesenswert?

Hallo Leute,

das hier ist mein erster Beitrag, generell bin ich im Bereich µC 
Programmierung noch ein relativer Neuling.

Für meine aktuelle Bachelorarbeit baue ich ein PCB bestehend aus einem 
neuen STM32WL55 auf, der Daten, kommend von einem GPS Modul (ST Teseo 
LIV3F) sowie eine BT Modul (RN4871) via LoRa senden soll.

Der STM32 bietet 2 UART Interfaces, eines davon verwende ich mit einem 
FT232R USB zu UART. Nun muss ich dementsprechend das GNSS sowie das BT 
Modul anbinden, wobei ich aktuell auf Probleme stoße, da am STM32 nur 
noch 1 UART interface frei ist. Beide Module unterstützen I²C, jedoch 
wird in den Manuals immer von der Einrichtung via UART gesprochen (Siehe 
Bilder).
Nun stelle ich mir die Frage, ob ich die ASCII commands über USB - UART 
in den STM32 und dann über I²C übertragen kann, oder ob ich lieber einen 
weiteren UART Channel in Form von zb. Software UART integrieren sollte.

Den STM32 selbst werde ich über SWD flashen.

Vielen Dank für jegliche Informationen!

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Wenn beide Module niemals von selber quaken, sondern nur auf Anfrage, 
und wenns nicht super pressiert, kannste auch deinen einen uebrigen UART 
umschaltbar auf entweder "BT anquaken" oder "GPS anquaken" bauen. Kost' 
halt ein paar Gatter und einen GPO Pin am STM.

Gruss
WK

von Gabriel H. (gabo)


Lesenswert?

Das wäre schon mal eine recht nützliche Lösung die ich im Hinterkopf 
behalten würde.

Da über USB nur Daten abgefragt werden würden, kam gerade noch die 
Überlegung auf, die beiden UART interfaces für GPS & BT zu verwenden und 
für USB einen I²C - USB Wandler wie zb. den FTDI FT201X, den STM32 als 
Master.

Wäre I²C hier die Schnittstelle der Wahl oder eignet sich da irgendwas 
besser?

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Gabriel H. schrieb:
> und
> für USB einen I²C - USB Wandler

Koennte prinzipiell gehen, aber was haengt denn an dem USB Kabel an der 
anderen Seite dran? Ein PC? Welches Betriebssystem? Kriegste da die 
Treiber, etc. fuer den USB->I2C Chip ans Laufen? Das kommt mir deutlich 
exotischer vor als USB->Seriell. Du brauchst da ja dann auch sowas wie 
z.b. ein Terminalprogramm nur fuer I2C, oder sonst irgendeine Software, 
die exotischer ist, als ein normales Terminal.
Dann musste noch dafuer sorgen, dass der USB->I2C Wandler z.b. per 
Interrupt leicht den STM32 auf sich aufmerksam machen kann, wenn 
irgendwas aus Richtung USB anliegt. Sonst muesste der STM32 immer 
pollen.

Weils 'ne Bachelorarbeit ist, wuerd' ich nicht mehr Schwierigkeiten als 
unbedingt notwendig einbauen.

Gruss
WK

von fchk (Gast)


Lesenswert?

Gabriel H. schrieb:
> Der STM32 bietet 2 UART Interfaces, eines davon verwende ich mit einem
> FT232R USB zu UART.

Du hast den dritten UART, den LPUART vergessen. Der wäre fürs GNSS 
ideal, weil dort keine großen Datenraten verwendet werden.

fchk

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
Noch kein Account? Hier anmelden.