最近在做一个安卓上的打印机升级软件,说白了也就是通过串口往打印机写数据,不断的发包过去,等打印机反馈,再继续发的一应一答式操作。这中间碰到了一个问题,完整的升级包应该是147个包,但是我每次发到第45个包的时候就收不到打印机的反馈了,原因不明,串口通讯正常,求大神拯救
没有代码,没有日志 不怎么好看
但你可以试一下用tcpdump抓包,然后分析,
TTY设备的open需要设置正确的参数。
fd=open("/dev/ttyS0",O_RDWR|O_NOCTTY|O_NDELAY);
new_ios.c_cflag &= ~CRTSCTS;
new_ios.c_iflag &= ~(IXON | IXOFF | IXANY);
new_ios.c_iflag &= ~(INLCR|IGNCR|ICRNL);