linux 串口的坑真的好多!明明连了几个,/dev下一大堆,而且名字也多种。tty,ttyS,ttyACM,ttyUSB。。。

  1. STM32 的OTG CDC 方式的串口,链接到windows 的WSL 认出来的是ttySxx,在windows 上认出了COM36,那么,在WSL 中为ttyS36,。

  2. 不过到了ubuntu 系统中,却认出了ttyACM。ttyACM 是什么东西?网上巴拉巴拉讲了一大堆。其实 ttyACM 认为链接的是一个拨号MODEM(PSTN Modem)!更加过分的是PC在设备连接后尝试发送AT +命令约一分钟。非常烦人。无奈之下,将原先的协议AA55 引导序列的方式。感觉不太可靠。

  3. 想办法关掉这个发AT 命令的功能好像还有点难。也无法讲ttyACM 改成ttyUSB。

有一些命令还是有用的,例如:

查看某个串口的详细信息

udevadm info --attribute-walk --name=/dev/ttyACM0

查看所有链接的USB

lsusb

细节是魔鬼,一个串口花头经好多。

 

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐