PC上的GUI向嵌入式系统发送一组字节。
设备是FTDI USB TTL串行电缆
我们需要一个可预测的速度。我从PC发出一件事,但我在嵌入式系统的UART(接收缓冲区)中看到0x00
或0x80
个字节。
这是发送字节的C#语句......
connectorPort.Write(Protocol.Our_Command_04_Start_Data, 0, Protocol.Our_Command_04_Start_Data.Length);
115200工作,但速度不够快。
我需要看起来像921600 bps的信号。 460800 bps可能会让我失望;也许。我们在嵌入式系统的这个端口上使用流量控制(CTS / RTS)。
有没有办法让C#的UART能够达到其中一种速度?怎么样?
答案 0 :(得分:2)
当115200不足时,我以各种异常速度运行FTDI芯片,包括921600和500000 bps。使用Win32 API,无需特殊处理,只需在传递给SetCommState
的设备控制块中设置所需的波特率。
如果您正在使用(System.IO.Ports.SerialPort
),则还有其他限制。如果你假装课程不存在,你会为自己省去许多麻烦。
FTDI有一个非常有用的应用笔记AN_120 Aliasing VCP Baud Rates,提供可能对您有帮助的信息。