[STM32L5] OpenBootloader UART errors
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-05-21 3:37 AM - edited ‎2024-05-21 3:38 AM
Hi, I integrated the OpenBootlader for the STM32L552 to my project and it works normally as expected. I'm only using the UART interface and reduced the boot loader project to the minimum.
The problem I'm facing is that sometimes the flashing stops, because the MCU is not acknowledging the messages from the programmer.
This is because the MCU is hanging in the USART receive loop:
/**
* @brief This function is used to read one byte from USART pipe.
* @retval Returns the read byte.
*/
uint8_t OPENBL_USART_ReadByte(void)
{
while (!LL_USART_IsActiveFlag_RXNE(USARTx))
{
// OPENBL_IWDG_Refresh();
}
return LL_USART_ReceiveData8(USARTx);
}
I tried different UART speeds and the problem is not speed related.
Maybe there is a problem because every single byte is handled for reading? Why there is no DMA or interrupt mechanism implemented?
How can I fix this issues?
- Labels:
-
Bug-report
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-05-21 3:59 AM
Have you checked for UART errors - Framing, etc ?
A complex system designed from scratch never works and cannot be patched up to make it work.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-05-21 4:58 AM
No errors when the issue occurs:
