Forum: Mikrocontroller und Digitale Elektronik STM32 Pin abfragen


von C. W. (chefkoch)


Lesenswert?

Hallo *,

kurze Frage: Kann ich bei einem mit dem UART des STM32 verbunden Pin 
während dem UART-Betrieb den Pegel abfragen oder muss ich vorher die 
Funktion des Pins umschalten?

von Walter T. (nicolas)


Lesenswert?

C. W. schrieb:
> STM32 verbunden Pin
> während dem UART-Betrieb den Pegel abfragen

Ja. Allerdings kann der eingelesene Status schon ein paar Takte alt 
sein.

von C. W. (chefkoch)


Lesenswert?

Sehr gut - ist nicht so zeitkritisch. Ich mus bei einem 1-Wire Protokoll 
darauf warten das der Partner das Telegramm mit einem low auf dem Bus 
quittiert.

von Dr. Sommer (Gast)


Lesenswert?

Ich kann grad nicht nachsehen aber ich meine der UART hat sogar ein Bit 
in einem Register das den aktuellen Pin Zustand enthält. Schau auch ggf. 
mal den IDLE Interrupt an.

von C. W. (chefkoch)


Lesenswert?

Dr. Sommer schrieb:
> Ich kann grad nicht nachsehen aber ich meine der UART hat sogar ein Bit
> in einem Register das den aktuellen Pin Zustand enthält. Schau auch ggf.
> mal den IDLE Interrupt an.

Wäre zu schön gewesen - ich finde im Reference Manual leider nichts. das 
Thema IDLE bringt wohl leider nichts, da das Bit nur gesetzt wird aber 
nicht wieder sebstständig gelöscht wird bis wieder Daten gekommen sind.

von Dr. Sommer (Gast)


Lesenswert?

C. W. schrieb:
> das Thema IDLE bringt wohl leider nichts, da das Bit nur gesetzt wird
> aber nicht wieder sebstständig gelöscht wird bis wieder Daten gekommen
> sind.

Ich meine dass es nur beim 1. IDLE Frame gesetzt wird und dann erst 
wieder nach dem nächsten empfangenen Byte, wenn da denn eine Pause 
kommt.

von C. W. (chefkoch)


Lesenswert?

Da mein Bus ja nach dem Senden in den IDLE-Zustand geht würde das Bit ja 
gesetzt werden. Ein Rücksetzen bei der Quittung würde meines Erachtens 
nicht stattfinden.

von Dr. Sommer (Gast)


Lesenswert?

Ja, man muss es ggf. in der ISR löschen. Der Interrupt kommt nur 1x. Ich 
habe damit mal eine Paket Erkennung gebaut

von C. W. (chefkoch)


Lesenswert?

Danke für die Gedanken aber ich ziehe wohl lieber ne Schleife bis ich im 
IDR mein Ack sehe oder wegen eines Timeout abbreche.

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.