AnsweredAssumed Answered

Reasons for which the TC flag does not go High after the last transmission byte in USART1 on STM32f100

Question asked by Ferreira on Sep 2, 2013
Latest reply on Sep 2, 2013 by Ferreira
Hi,

I'm using Usart1 on STM32F100. I need to wait until the last byte is completed sended to make the DE signal go low on a Modbus Slave application. This seems to be a simple task for a each programmer, but I have spend one day on that, and sometimes this flag is been set, other times it doesn't. I read the reference manual and there is nothing that says that it is required any configuration to make this flag be asserted.
I have used the pool version, and the interrupt version, and the problem is always the same.
Sometimes it is asserted and the communication is works well, other times it is blocked, waiting for this flag, to make sure that the last byte has been sended.

Can someone help me, giving me reasons, why this occurs?

Thank you very much in advance,

Best regards,

Almerindo Paiva

Outcomes