Virtual Serial Port Data Loss
2 views (last 30 days)
Show older comments
Here is my problem I am using the serial command to read a virtual usb serial port. I need to read data at about 2 MHZ. However, it seems that matlab is unable to read the data without loss. I am wondering how to fix this problem.
Here are the following things I have tried
data.portObject = serial(portToOpen,'BaudRate',baudRate,'StopBits',1, 'InputBufferSize', 65536,'BytesAvailableFcn', @breakCallBack, 'BytesAvailableFcnMode', 'byte', 'BytesAvailableFcnCount',1024 );
Where break call back is
function breakCallBack(obj, event)
fread(obj, 8196, 'uint8');
I have obviously also tried to use a break interrupt function with no success even though my sending microcontroller was stalling in between data the function was never called.
I have tried switching the different numbers around to different values to see if the input buffer wasn't large enough ect.
I believe that the micro controller is sending 1 bit.
I tried different sorts of flow control and checked the number of data bits.
Does anyone have any insight as to why the communication channel is losing data when read by matlab?
I have checked the transferred data and it appears to be losing about 10% of the data being set.
I am willing to provide more information if neccesary.
4 Comments
Answers (0)
See Also
Categories
Find more on Startup and Shutdown in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!