05-16-2008 02:29 PM
05-21-2008 04:34 PM
05-22-2008 03:15 PM
05-23-2008 09:12 AM
05-28-2008 10:31 AM
05-28-2008 10:44 AM
05-28-2008 11:18 AM
05-30-2008 11:24 AM
05-30-2008 11:43 AM
Hello PBerg
I tried configuring the MAX as you said, but the junk data still comes through. I had also tried various uses of ibeos and ibdev to set it to terminate on a character 10, but I was still getting the garbage data even then.
Also, isn't the EOT supposed to also perform that function? Because setting EOS to chr(0x0a) would also mean that this character could never be transmitted in the message (or data would be lost) which is part of my question above. Is 0x0a not a valid character that can be sent?
In either case I still do not quite understand why the driver would access data beyond what was transmitted. If it was not terminating, wouldn't the message time out (instead of complete)?
In using NI-Spy and watching the return values from an ibrd call (the ibsta status bit values) both the CMPL(I/O completed) and END (which indicate that END or EOS were detected) are set. This would seem to indicate that the driver is terminating the read properly, but that somewhere between terminating that read and passing back the data to the buffer, something else happens.