gpt4 book ai didi

c - 使用 termios 获得更快的波特率

转载 作者:太空宇宙 更新时间:2023-11-03 23:50:30 27 4
gpt4 key购买 nike

使用非规范输入处理,我正在使用带有“DB9-to-USB”电缆的 Xbee 接口(interface) XBIB-R-Dev 读取发送到 Xbee S2B Pro (ZB) 的串行数据。我正在使用 http://tldp.org/HOWTO/Serial-Programming-HOWTO/x115.html 中的一些示例代码.我正在做的这个项目是严格的 c 代码而不是 C++。

在运行 Ubuntu Linux 12.04 LTS(32 位 - 最新更新)的笔记本电脑上阅读有关 termios.h 的信息时,我发现可用的最高波特率仅为 38400 波特(B38400 常量)。简单地将 B38400 的“#define BAUDRATE”换成更高的波特率 B57600 或更高是行不通的,因为它没有在头文件中定义。我会收到一条错误消息,指出 B57600 未定义。

我的问题是有没有更好的方法或方法来解决这个问题(使用 termios)所以我可以以更快的速度读取数据,因为 Xbee S2B Pro 能够插入高达 1 Mbps 的串行数据速率(规范为列在 digi.com 网站上)。

感谢您的帮助。

迈克

最佳答案

你能不能使用以下内容(使用 struct termios newtio; 作为问题链接中的示例)

 cfsetispeed(&newtio, B57600);
cfsetospeed(&newtio, B57600);

或者只是

  cfsetspeed(&options, B57600);

termios 手册页表明传递给这些函数的speed_t 参数可以取高达B230400 的值。我还在 12.04 Ubuntu 上开发串口读取应用程序,上面的功能对我来说非常好。

关于c - 使用 termios 获得更快的波特率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20791997/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com