0

我正在尝试将数据写入 arduino,我发送了 70 批 6 字节(所以 420 字节),我相信在 9600 波特率下它应该需要大约 40 毫秒才能发送正确?但它需要 400 毫秒的时间来写,我不知道为什么或如何让它加速。

我用于发送的代码很简单,附加代码只是确保它以 6 个字节集发送。

private void Send(List<Byte> Data)
{
    if (Running)
    {
        if (_Port.IsOpen)
        {
            try
            {
                int Rem, Div = Math.DivRem(Data.Count, Tester.Length, out Rem);
                for (int cnt = Rem; cnt < Tester.Length; cnt++)
                {
                    Data.Add(255);
                }
                _Port.Write(Data.ToArray(), 0, Data.Count);
            }
            catch (InvalidOperationException)
            {
                _Port.Close();
            }
            catch (IOException)
            {
            }
       }
    }
}

基本上我希望这种情况尽快发生,因为我试图尽可能实时地更新硬件。谢谢你的帮助

4

1 回答 1

2

波特率是每秒位数,而不是每秒字节数。

420 字节是 3360 位,因此发送原始数据需要 3360/9600 = 0.35 秒。因此,当包括开销时,400 ms 似乎非常合理。

于 2013-07-14T15:23:35.340 回答