A 10% error is really too big, for serial communications.? It miiiight still work, but I strongly doubt it, because by the time you get to the end of the character (10 bits in - start, 8-data, stop), you're a full bit time off.? Most UARTS use an internal clock that's a multiple of the baud rate - typically 16 times - and do their sample for each bit on what should be the middle of the bit (for example, 8 clocks after the one that detected the start bit).? This means that by the end of the character, it's sampling the wrong bit in the serial stream.
I found that errors of less than 3% usually work; I try to keep the timing error to half that or better if at all possible.? Lee's recommendation of a 1.8432 crystal comes in with an error of about 2.4%, which should work fine.
~~
Mark Moulding