False Framing Errors?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎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:
- I have looked at the timing on an oscilloscope and it appears to be fine.
- If I disable the interrupt, I can receive the data intact with a passing CRC.
- Labels:
-
STM32F4 Series
-
UART-USART
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎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?Up vote any posts that you find helpful, it shows what's working..
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎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?- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2014-08-12 8:05 AM
Yes, 8-bit + parity is configured as 9-bit in STM32 implementation.
Up vote any posts that you find helpful, it shows what's working..
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2014-08-13 11:03 AM
Do you know if this is a normal way of doing it or something strange the ST does?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎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.
Up vote any posts that you find helpful, it shows what's working..
