这一部分也走了一些弯路。
主要原因是很多文章都说应该在virtualbox设置中,选取
使用串口,然后进入ubuntu后,使用minicom或者kermit的时候将串口设备设置为ttys0或者ttyusb0就行了,前者是自带串口的机器,后者是USB转串口的。我使用的是moxa的1250USB转双串口的盒子,反正我按照这样的说法,在ubuntu的命令行怎么都打不开串口,minicom提示设置错误。
非常偶然的原因,我发现virtualbox设置中的usb选项栏下都是空的,但是可以添加的,我点了一下添加,果然有moxa1250,选中之后,在ubuntu的命令行中就可以查到ttyusb0这个设备了。
查询的办法很多:
dmesg | grep usb
查看串口驱动:cat /proc/tty/drivers/serial
查看串口设备:dmesg | grep ttyS*
查看串口名称 ls -l /dev/ttyS*
反正应该能看到有ttyusb0这样的字样,我的moxa1250有两个串口,对应ttyusb0和ttyusb1.
安装上minicom后,使用 sudo minicom -s进入串口设置界面,把里面选择的串口号对应你的ttyusb0或者1.
总之这样就可以连接上串口了,可以正常收发数据了。
但是这时候还有个小问题,就是键盘输入的字符没有回显,这个好办,在minicom的设置中有个screen and keyboard的选项,将里面的echo设置为on即可。
注意minicom打开需要sudo权限,所以每次都要敲sudo minicom 才能进入minicom的收发界面。
如果要退出,按ctrl+A,出来minicom命令选项栏,在最下面。我一般用x退出。
还有一个小问题,就是一般我们进行嵌入式开发,都用串口作为命令行通信的接口,那么可不可以在windows下直接用Xshell或者sscom等调试工具直接调试呢?我试了试,真不行,原因是linux和windows下对应的回车换行符好像不一样,反正用windows下的sscom收过来的数据就是有乱码的,用linux的minicom就是整整齐齐的。所以还是把这个弄通了比较好。
在linux下的调试工具还有kermit,有人说这个比minicom更稳定,不过仁者见仁智者见智吧,使用也很简单,这里不再赘述,我也装了,但是没怎么用。
还有最后一点,可能是我选了回显的原因,在与开发板连接上之后,命令行的我每输入一个字符都是出现两个,比如,ls,显示llss。
后来在启动minicom时,加上了-W选项就没有这个问题了。
sudo mincom -w
阅读(761) | 评论(0) | 转发(0) |