Hi Mark,
I've got two MCF52258's on the same PCB using a direct cross linked TXD2/RXD2 to perform SIPC (Serial Inter-Processor Communication). I've implemented message packets that include packet length info and checksums so I can try to make sure I don't process junk. My problem is that I'm occasionally seeing checksum errors in the received data from one processor, i.e. the one that doing most of the transmitting. At this point, the retry logic in the code detects the UNACKED message and resends the exact same data using the same code to transmit it again. This last point combined with the fact that I've included verification that fnWrite() did queue the entire message makes me fairly confident my code is sending what it thinks it is.
So the real issue is that when I use a logic analyzer set to trigger on the checksum error (software activated testpoint), the serial message on the wire is one byte short of what it should be, i.e. 87 instead of 88. It required the 1st byte of the retry message to complete the packet processing and decide the checksum was incorrect, however the retry message is 88 bytes as expected.
So I'm wondering if you recall any issues with the serial driver losing one character in a transmission block? I searched the Forums and didn't see any likely entries.
FYI:
The baud rate being used is 750kb and I've attached a file containing the serial port initialization.
Thanks Tom