linux – 为什么只有在按Enter键后才能通过串行连接收到字符?
我有一个简单的PC到板连接使用串行(9600,没有奇偶校验,8位,没有hw流)
我在PC上用teraterm打开简单的终端*并在teraterm和board中输入密钥,我就是这么做的 cat /dev/ttyO5 我在范围内看到了按下的字符,但是只有在teraterm中按下“enter”后才会看到控制台中的字符(好像它们存储在Linux驱动程序中的某些FIFO中,只能输入触发器) >为什么只有在按下回车键时才能在Linux驱动程序中收到字符? 谢谢你的建议, 解决方法
您描述的行为是规范读取(也称为阅读线)的特征.
不,Linux串行端口驱动程序正在接收线路上显示的每个字符.
是,在发出cat命令之前,将串行端口配置为非规范模式: stty -F /dev/tty05 raw 或者更可能是正确的设备节点 stty -F /dev/ttyO5 raw 或者使用termios接口在板上的用户空间程序中将串行端口配置为非规范模式.示例代码是here. 有关如何正确编程串行端口的文档是 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |