> The hardware is a 16F876 running at 3.579545 mHz. When programming with > two versions of the firmware, the only difference being the value in > SPBRG, the following can be observed with an oscilloscope: > > SPBRG=11 (19200 baud [actually 18643]) > > Start bit time is about 55us followed by about 480us before next start > bit. 55us is almost exactly 1/18643. My measuremet could be off that > much. > > SPBRG=5 (38400 baud [actually 37286]) > > Start bit is about 185us followed by about 240us before next start bit. > > By doubling the baud, the throughput only improves about 20 percent > because of the apparent lengthening of the start bit timing. Again, the > *only* difference between the two versions is the value for SPBRG. Note > that transmitting 64k bytes of data at both rates is successful. I don't believe the UART is stretching the start bit. Are you perhaps seeing the space between characters? If the rest of the system can't feed the UART to keep up with 37286 baud, then you'd see a space between characters. However, this space would have the opposite polarity of the start bit. If you look at the PIC TX pin, the space between characters is high, and the true start bit is low. ******************************************************************** Olin Lathrop, embedded systems consultant in Littleton Massachusetts (978) 742-9014, olin@embedinc.com, http://www.embedinc.com -- http://www.piclist.com hint: The list server can filter out subtopics (like ads or off topics) for you. See http://www.piclist.com/#topics