STM32 M3 Serielles Interface Nr. 3 an Pin T3C1 bis 4

OP (Firma: K(B)lick-Punkte) #2950735
Lesenswert?

Hallo Zusammen,

ich bin fürchterlich neu in STM32. Ich bastel gerade mit einem STM32 M3 
rum
Für ein Projekt brauche ich neben dem USB mit dem ich die Verbindung zum 
PC halte, GPS an der 2. Seriellen Schnittstelle noch eine 3. Serielle 
Schnittstelle.

Diese möchte ich an T3C1, T3C2, T3C3 oder T3C4 realisieren.
Da ich bei der Programmierung noch nicht soweit fortgeschritten bin, 
suche ich dazu einen Einstieg. Gibt es irgendwo ein Beispielcode für so 
eine Lösung?

Achso, es soll/muss eine Schnittstelle über eine Leitung werden, sprich 
der Pin wird nach dem Empfang auf Senden umgestellt, und nach dem Senden 
wieder auf Empfang.

Danke für die Hilfe

Carsten
#2955882
Lesenswert?

Carsten Giesen schrieb:
>  noch eine 3. Serielle Schnittstelle.

Serielle Schnittstelle ist sehr relativ.
Muss es denn unbedingt eine mit einem U(S)ART sein.

Wenn ja bleibt nur es in Software zu realisieren. Allerdings wird es in 
der STM32 Klasse wohl nicht viel Beispielcode geben, da die STM32 
reichlich Varianten mit ueppiger Periphery haben.
Aber Du kannst Dir aus der Atmega Welt ein Beispielcode nehmen und Ihn 
auf den STM portieren.

ju
OP (Firma: K(B)lick-Punkte) #2956066
Lesenswert?

Mist, da habe ich mich vertan. Sorry.
Ich habe den 48Pin also den mit den 3 Seriellen Schnittstellen.
Aber auf Pin 21 & 22 habe ich I2C am laufen um div. Sensoren abzufragen.

In der Tat ist es einfach so, dass ich ein fertiges Board (Naze32 für 
Quadrokopter) hier liegen habe, wo die Software OpenSource ist. Und die 
Pins 16-19 liegen günstig und sind frei.
Auf einem dieser Pins würde ich jetzt gerne mit meinem Empfänger über 
eine Leitung kommunizieren. Das Protokoll ist ein normales Serielles 
Signal, aber eben über EINE Leitung.

Der Vorteil es so zu machen, wäre, dass niemand am Board rum löten 
müsste.

Ich könnte noch den Port nehmen, wo auch USB drüber läuft, aber ich 
glaube das gibt Stress zu erkennen, wer denn jetzt am Zug ist.

Gruß
Carsten
OP (Firma: K(B)lick-Punkte) #3072557
Lesenswert?

Hallo Zusammen,

ich möchte nochmal auf dieses Thema zurück kommen.

Das wir drei Serielle Schnittstellen auf besagten Board haben ist ja nun 
geklärt.

Die sind aber aus diversen Gründen alle für mich nicht zu benutzten, da 
sie auf der ein oder anderen Art schon im Einsatz sind.

Ich suche also immer noch so etwas wie ein Softwareserial wie es für den 
Arduino ja auch gibt.

Meine Suche in der weiten Welt von Google hat mich leider nicht weiter 
gebracht. Meine Kontakte konnten mir auch leider nicht weiter helfen!

Gruß
Carsten
OP (Firma: K(B)lick-Punkte) #3072639
Lesenswert?

Hallo Frank,

das ist eine Idee, wenn gar nichts anderes mehr geht!
Lieber wäre mir aber wirklich etwas wo ich (andere) nicht noch basteln 
müssen.

Ich bin wirklich erstaunt, dass es in dieser Richtung nichts gibt. Oder 
suche ich einfach nur falsch?

Gruß
Carsten
#3072777
Lesenswert?

Brauchst Du denn den zusaetzlichen UART fuer Ein und Ausgabe oder nur in 
einer Richtung.

Ich komme dann nochmal auf das zurueck was ich oben schon mal 
geschrieben habe.

Es ist nicht schwer einen Code der fuer den AVR existiert auf einen 
STM32 zu portieren.
Ich habe viele der Libs die ich fuer die AVR's habe auf STM32 portiert.

Im allgemeinen machst Du folgendes:

I/Os und deren Initialisierungen anpassen dabei gleich per defines die 
GPIO's auf die Namen mappen die Du in der AVR Lib verwendest.

Timer im STM32 aussuchen und configurieren
ISR dieses Timers auf Deine ISR Funktion der AVR Lib mappen.
OP (Firma: K(B)lick-Punkte) #3072829
Lesenswert?

Ich brauche den Port in beide Richtungen, allerdings auf einem Pin.
Ich brauche ihn für Telemetrie:
1.) Frage vom Receiver: Gib mir mal die GPS Daten
2.) Antwort vom STM32: Alle GPS Daten

Und das alle in 19200 Baud.
Das heißt ich muss den Pin zunächst auf Empfang haben und dann zum 
Antworten umschalten, und wenn es dann fertig ist, wie auf Empfang 
gehen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren