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