Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
21602 Discussions

Randomly occuring UART reception problem

Altera_Forum
Honored Contributor II
951 Views

Hello all forum members! 

The UART code I have written for DE-1 board normally echoes the character it has received all well, as I expect, but sometimes, randomly, it receives wrong characters that are context dependent, that is, if I send character "a" for example, the erronous reception yields to character "infinity" (decimal 236), not any others. For instance character a is binary 01100001 while character infinity is 11101100. 

Tranmitting is always correct (I have tested it using on board LEDs that reflect input data and hyperterminal program). When an error occurs, LEDs show me this. 

The RTL schematic seems OK. 

Bitwise repetition (UART_TXD <= UART_RXD) works always well. 

I use 50MHz on board clock, I sample UART_RXD input with 50MHz clocking rate then after the reception of start bit, I divide this frequency to 19200 bps, my RS232 line frequency. 

50MHz is not divisible by 19200. A small amount of error is due to this division but this is in the order of T/2600, T = 1/19200) that must be negligible. 

Thank you at advance for all suggestions.
0 Kudos
0 Replies
Reply