单片机发送512数据 上位机总是读取4K数据,延时解决不了,不知何原因,最终修改这里正常,
应该是这个参数决定缓冲区大小。
using System;
using System.Runtime.InteropServices;
using System.Threading;
using System.Windows.Forms;
using LibUsbDotNet.Internal;
using LibUsbDotNet.Main;
namespace LibUsbDotNet
{
/// <summary>
/// Contains methods for retrieving data from a <see cref="EndpointType.Bulk"/> or <see cref="EndpointType.Interrupt"/> endpoint using the overloaded <see cref="Read(byte[],int,out int)"/> functions or a <see cref="DataReceived"/> event.
/// </summary>
/// <remarks>
/// <list type="bullet">
/// <item>Before using the <see cref="DataReceived"/> event, the <see cref="DataReceivedEnabled"/> property must be set to true.</item>
/// <item>While the <see cref="DataReceivedEnabled"/> property is True, the overloaded <see cref="Read(byte[],int,out int)"/> functions cannot be used.</item>
/// </list>
/// </remarks>
public class UsbEndpointReader : UsbEndpointBase
{
private static int mDefReadBufferSize = 512;
private bool mDataReceivedEnabled;
private int mReadBufferSize;
private Thread mReadThread;
private ThreadPriority mReadThreadPriority = ThreadPriority.Normal;