vmware添加windows物理端口
- 关闭虚拟机
- 打开虚拟机设置
- 选择“使用主机上的物理串行端口(P)”
- 选择物理串口,这里我选择了“自动检测”
- 开启虚拟机
编译安装 minicom
首先尝试使用apt
命令安装,提示找不到包:
$ sudo apt install minicom
...
E: Package 'minicom' has no installation candidate
Ubuntu x64 版本的 apt 命令一般只寻找 32 位的程序,看来需要自己下载编译安装了,首先执行下面的命令下载相应的程序包并且解压:
$ wget -c https://launchpadlibrarian.net/368498010/minicom_2.7.1.orig.tar.gz
$ tar xf minicom_2.7.1.orig.tar.gz
尝试常规操作:
$ cd minicom_2.7.1
$ mkdir build
$ cd build
$ ../configure --prefix=<安装目录>
$ make -j
但是报错了,报错信息如下:
../../src/window.c:2003:3: error: BC undeclared (first use in this function)
BC = tgetstr("bc", &_tptr);
查看相应的代码,推测应该是某些依赖库没有装,往上翻阅../configure
阶段的输出,发现一系列“no”:
很明显了,是ncurses
库没有安装,执行 apt 命令安装 ncurse 库依然提示找不到包。(Ubuntu 64 位真心不好用)只能自己下载代码编译安装,我下载的是ncurses-6.0.tar.gz
。
编译安装 ncurses
在 Ubuntu x64 中编译安装 ncurses 是简单的,执行基本步骤即可。
$ tar xf ncurses-6.0.tar.gz
$ cd ncurses-6.0
$ mkdir build
$ cd build
$ ../configure
$ make -j
$ sudo make install
注意,我这里因为 ncurses 是一个通用库,将其安装到系统目录了,如果希望将其安装到指定目录,可以使用 ../configure --prefix=<安装目录>
指定。
安装完 ncurses 后,再去安装 minicom 就可以了。(记得重新 ../configure)
添加软链接
同样的,因为minicom
是一个通用工具,我在系统目录添加了软链接:
$ sudo ln -s <minicom绝对路径>/minicom-2.7.1/bin/minicom /usr/local/bin/minicom
现在在终端下就可以直接输入 minicom 命令了。
使用 minicom 与板卡通信
首先打开 vmware,在下方找到串口图标,点击连接
连接后,进入终端,输入下面的命令:
$ dmesg |grep ttyS
[ 1.152085] 00:05: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A
[ 1.174890] 00:06: ttyS1 at I/O 0x2f8 (irq = 3, base_baud = 115200) is a 16550A
从输出看,我们要使用的端口应该是 /dev/ttyS0 或者 /dev/ttyS1,输入下面的命令:
$ sudo minicom -s
进入串口设置页面:
选择 Serial port setup,输入不同的字母可以设置不同的选项:
这里我们主要修改 Serial Device 和 Hardware Flow Control,前者很明显应该修改为前面 dmeg
命令输出的两个 ttyS,后面的选项可以决定我们是否能够输入,将后者设置为 No,按下回车确认选择 Exit 进入 minicom:
可见,我们成功的与板卡通信了,并且支持键盘输入交互。
怎么退出 minicom
其实 minicom 的界面已经告诉我们了,输入 ctrl+A 然后松开,再按下 Z,即可打开帮助页面,如下所示,此时按下 X,再确认下就可以退出 minicom 了: