On 2/23/13 9:01 AM, allison wrote:
On 02/23/2013 03:24 AM, Rob wrote:
On 23 February
2013 03:30, Jules Richardson
<jules.richardson99 at gmail.com> wrote:
Well... that's confusing! It seems that
it's not a particular sequence of
data as such; it stalls when the packet checksum byte read from the sender
happens to be 19d - which is XOFF.
Argh... you are bringing back lots of horrible memories about serial
systems and flow control...
Two thoughts:
I presume you've gone through all the options relating to the serial
ports on both systems to disable all types of flow control? (not just
soft, as some systems like misleading you and implement both anyway.)
Would you be able to code up a crc-16 test rather than checksum?
less chance of hitting 19d on the last byte..
Rob
Simple solution, SLOW DOWN the data rate until it works.
Flow control is only needed in systems that cannot handle high rates of
traffic.
On a lot of the older micros hardware flow control was best if available as
the system often was so slow it could not keep up or send xoff in a timely
fashion. Also pre enhanced 16450 usart most only could buffer maybe
1 to 3 chars in the part.
Allison
I would definitely agree with that! I have a Xerox 820-II that simply won't
transfer anything at higher than 1200 baud, even though it has options for
data rates up to 19200. Text transfer was a different story and it would
accurately accept text up to 9600, but on binaries, 1200 was max for a
successful transfer. ;)
Dave Land
Land Computer Service