0

知道为什么我的原生 C 应用程序不能达到高于 38400 的波特率吗?我有完全相同的应用程序,我成功初始化它以在 9600、19200、38400 波特上收听和传输。但是,一旦我设置了 57600,我就会从发射器中取出垃圾(我不知道接收器)。我正在用终端收听它,所以我直接从针头看到垃圾。

我在 GPIO 接头的 Pin 14 和 15 上使用 Raspbian 和 uart。

是否有任何导致问题的精确分数的调整?

现在我只是这样做(并且它有效): cfsetispeed(&options,B38400); cfsetospeed(&options,B38400); tcsetattr(uart0_filestream, TCSANOW, &options); fcntl(uart0_filestream, F_SETFL,O_NDELAY);

TX部分:int a = write(uart0_filestream, StartOfTheMessage, Length);

谢谢你。

4

1 回答 1

0

您的 UART 线不支持更高的波特率。

于 2013-06-12T04:42:17.897 回答