Forum: Mikrocontroller und Digitale Elektronik Send_IT and Receive_IT mit STM32 UART


von STM32 (Gast)


Lesenswert?

Hallo,

kann es sein, dass es mit der HAL-Bibliothek nicht möglich ist, 
gleichzeitig im Interrupt zu senden und zu empfangen?


Geht das nur indem der DMA verwendet wird, oder kann es auch ohne diese 
Funktionen klappen?

Ich rufe diese beiden Funktionen nacheinander auf, dann sende ich Daten 
raus.

HAL_UART_Receive_IT(&huart1, (uint8_t*)&ReceiveBuf, 100);

HAL_UART_Transmit_IT(&huart1, FrameBuf, Framelength);


Die Nachricht geht raus, aber in meinem ReceiveBuf empfange ich nur ein 
kaputtes Byte, obwohl definitiv Daten auf der Leitung anliegen.

von dFa (Gast)


Lesenswert?

>HAL_UART_Receive_IT(&huart1, (uint8_t*)&ReceiveBuf, 100);


Sicher, dass ReceiveBuf nicht schon ein Pointer ist?
Dann wäre &ReceiveBuf (wahrscheinlich) falsch.


>Ich rufe diese beiden Funktionen nacheinander auf, dann sende ich Daten
>raus.

Wie? Wo?
Als Interrupthandler?

von dFa (Gast)


Lesenswert?


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.