linux串口发送指令(write),一条指令的字节之间不连续,如何

2020-02-11 09:56发布

imx6与工控机232通讯;
arm 向工控机发送一条指令类似如下:
伪代码:
        cmd[15] = {01,02,03,04,05,06,07,08,09,10,11,12,13,14,15};
        ret = write(uart_fd,cmd,15);
函数执行完,ret 为15,证明write发送成功;

但是工控机接收的这条指令不连续,用串口监控工具捕获显示:01~14 连续接收,经过几毫米之后才接收到15;
(波特率为115200,字节之间的间隔应该不会超过1ms)

怀疑是不是arm发送的不连续,write先一次发送了14个字节,然后又发送最后一个字节数据15,造成工控接收不连续;
是不是串口缓冲区大小为14个字节,多了需要分多次发送?
缓冲区大小可以设置吗?

网上找的一篇 写的不是太详细  http://blog.csdn.net/sno_guo/article/details/17799739

QQ截图20160930140712.png (36.66 KB, 下载次数: 0) 下载附件 2016-9-30 13:58 上传

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。