我们使用read()
中的unistd.h
方法从Linux环境中的串口接收数据。要专门从/dev/ttys1
读取数据。
我们收到的部分数据包括字符0x0A
(换行符)和0x0B
(垂直制表符),但图书馆似乎忽略了它们。
我的意思是,我们使用unsigned char[]
来存储从端口获取的数据,并且数组包含除这些字符之外的所有数据。
答案 0 :(得分:2)
的ttys?您确定将终端驱动程序置于正确的状态以传递这些字符吗? (参见tcgetattr和tcsetattr)。根据您的精确设置,您可以使用stty程序以交互方式使用这些设置。
答案 1 :(得分:0)
你怎么知道你应该读0x0A和0x0B?您是否正在使用任何机制来“调试”电线,以确定您应该阅读的消息是什么? read()函数不假设数据正在读取,因此如果丢失任何字节,则应该在程序的任何其他部分。
希望这对你有所帮助。 谢谢, 塞尔吉奥。