急急急!linux串口总是read返回0 30
Linux开发板只有一个串口,设备名/dev/ttyS0,现开发板想与外部MCU通信,通过该串口相连,MCU串口发送数据linux开发板接收不到,每次read都是返回0,...
Linux开发板只有一个串口,设备名/dev/ttyS0,
现开发板想与外部MCU通信,通过该串口相连,MCU串口发送数据linux开发板接收不到,
每次read都是返回0,MCU发送数据没问题,在PC机串口工具给开发板发送数据,串口应用程序
接收正常,但开发板自己给自己发送数据(短接tx和rx),或者MCU给开发板发数据,read返回都是0。
请问单独一个串口不可以做shell控制终端,又做应用程序的串口数据通信吗?
为什么read总是返回0??
请求各位有了解的帮忙!谢谢!! 展开
现开发板想与外部MCU通信,通过该串口相连,MCU串口发送数据linux开发板接收不到,
每次read都是返回0,MCU发送数据没问题,在PC机串口工具给开发板发送数据,串口应用程序
接收正常,但开发板自己给自己发送数据(短接tx和rx),或者MCU给开发板发数据,read返回都是0。
请问单独一个串口不可以做shell控制终端,又做应用程序的串口数据通信吗?
为什么read总是返回0??
请求各位有了解的帮忙!谢谢!! 展开
1个回答
展开全部
首先用linux下的minicom去看下串口到底有没有数据发出来,如果有的话,那就是程序接收问题了.minicom配置要配正确."请问单独一个串口不可以做shell控制终端,又做应用程序的串口数据通信吗?"什么意思?是既可以做shell终端,也可以做串口数据通信?当然可以的啊,只要通过串口发送命令或者数据都是可以的.
更多追问追答
追问
串口发送命令,这是shell在处理,这是命令行处理模式,会将所有数据当作ASCII字符,这是终端;纯数据通信,叫原始模式,这个是对收到的数据原封不动,不会进行转义的,不是当作ASCII字符处理。
追答
你想实现命令操作的话,始终是可以的,比如根据收到的数据判断,然后执行对应的命令.串口只管发数据,至于接收端你要如何处理,属于个人的一些做法了.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询