首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用unistd.h中的read()缺少字符

使用unistd.h中的read()缺少字符
EN

Stack Overflow用户
提问于 2011-02-22 03:52:31
回答 2查看 503关注 0票数 0

在Linux环境中,我们使用来自unistd.hread()方法从串口接收数据。专门从/dev/ttys1读取数据。

我们收到的部分数据包括字符0x0A (换行符)和0x0B (垂直制表符),但是库似乎忽略了它们。

我的意思是,我们使用一个unsigned char[]来存储从端口获得的数据,该数组包含除了这些字符之外的所有数据。

你认为这可能是错误的吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-02-22 04:11:58

ttys?您确定要将终端驱动程序置于正确的状态以发送这些字符吗?(参见tcgetattr和tcsetattr)。根据您的精确设置,您可以使用stty程序以交互方式使用这些设置。

票数 2
EN

Stack Overflow用户

发布于 2011-02-22 04:02:12

你怎么知道你应该读0x0A和0x0B?您是否使用任何机制来“调试”线路,以确保您应该阅读的消息是什么?read()函数不假设数据正在读取,所以如果有任何字节丢失,应该在程序的任何其他部分。

希望这能对你有所帮助。谢谢,塞吉奥。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5070557

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档