2014-08-03 2:35 PM
I am using an STM32F407 to receive data via UART and seem to be getting false FE interrupts. There are two reasons why I believe that they are false:
2014-08-03 4:13 PM
Well you'd probably do better using a logic analyzer, and toggling a GPIO bit when you see the error, and then try to correlate the two.
Do you need 2 stop bits? Is the next start bit falling within the stop zone? Is it recognizing a glitch as a start bit, and then rejecting it?2014-08-12 5:23 AM
After some looking, I have solved my problem. ST UARTS include the parity bit as the MSb in the data bits. So 8E2 needs to be set up with a 9 bit word, not an 8 bit word.
I am getting this information from RM0090 Rev6: CR1->PCE bit explanationAm I correct in this assessment?I did not expect this to be the case; I expected that the parity bit would be found after the MSb of what we call the data byte, not to be the MSb of the data byte. Is there a standard implementation for this?2014-08-12 8:05 AM
Yes, 8-bit + parity is configured as 9-bit in STM32 implementation.
2014-08-13 11:03 AM
Do you know if this is a normal way of doing it or something strange the ST does?
2014-08-13 12:01 PM
I think it simplifies the silicon implementation. Others might mask it by having multiple bits documented to support 7N1, 7O1, 7E1, 8N1, 8O1, 8E1, etc or hidden it in the API.
We’re moving the ST Community to a new platform to give you a better and more reliable community experience.