I have implemented a new serial data transfer protocol in our 8051 system (80C552). I tryed to write the received characters immediately back to the terminal with the following commands:
ucrs232_buffer[ucrec_count] = S0BUF; S0BUF = ucrs232_buffer[ucrec_count];
"The baud rate is 9600. My OSC=15MHz -->9765bps. This is not so good but it worked with the old protocol" Just because something doesn't fail doesn't meant that it's actually working properly! ;-) That sounds a pretty large baudrate error!! :-0 As recommended on the Keil baudrate calculator http://www.keil.com/c51/baudrate.asp "For the best results, you should choose baud rates that are accurate to +/-1% or better." I think you could just have been lucky that it ever worked!!
Thank you for your message and the baud rate generator. I tryed the baud rate 1200 with and error of +0,17% and I got the same result! Unfortunatly it was not the reason! Christian