在ubuntu下利用minicom实现串口通信

摘要:
Windos有一个串口调试助手,Linux也有这样一个工具——minicom。然而,minicom和linux下的许多工具是相同的,它们也是命令行模式。没有图形界面可供我们欣赏。作为一个串行调试工具,虽然很难看,但总比没有好。为什么Linux下的工具如此简单,没有华丽的界面?看来我已经回到了展示它们之前的理解。一个可能的原因是,Linux是一种非商业软件,是自由软件爱好者在业余时间创作的,所以他们没有时间研究它

    windos有串口调试助手,linux下也有这样的工具——minicom。不过,minicom和linux下的许多工具都一样,也是命令行模式,没有图形化界面供我们享受。作为一款串口调试工具,虽然难看但总比没有的好。

    为什么linux下的工具都这么的简朴,没什么华丽的界面,好像回到了解放前。一种可能的原因是linux这种非商业性质的软件,都是有自由软件爱好者通过其业余时间创作的,没有时间搞用户体验度调查,也没有精力搞优美的图形界面。而且,linux是一种面向专业用户的系统,而非windows那种傻瓜式系统,工具软件实现功能就行了,没必要太过华丽。甚至,我认为简陋的工具软件可以让程序开发人员更能深刻领会软件的机理,而完美包装的软件却屏蔽了技术的细节,很难提高自我。所以,忍受linux下的痛苦软件,才能获得开心知识。

    回到正题,下面来一步一步实现minicom的安装。首先声明本文涉及的平台,(虚拟机 VMware 6.5 ) || (linux Ubuntu12.0.4) || (usb转串口),相信广大开发者很大一部分用的都是笔记本,自然选择的也是USB转串口。

安装minicom

一条命令就搞定了minicom的安装

#sudo apt-get install minicom  

在linux下实现串口通信

    有两者方法可以实现串口通信,依次展开。

方法1--以硬串口挂载到linux系统中 

1、查看主机usb转串口的串口号

在ubuntu下利用minicom实现串口通信第1张

    我这里是COM1

2、为虚拟机Ubuntu添加一个硬串口

在ubuntu下利用minicom实现串口通信第2张

在ubuntu下利用minicom实现串口通信第3张

在ubuntu下利用minicom实现串口通信第4张

    这里选择和物理主机一样的虚拟串口COM1

在ubuntu下利用minicom实现串口通信第5张

    配置完成后的效果

在ubuntu下利用minicom实现串口通信第6张

    启动虚拟机后,可以通过VM -> Removable Devices 查看当前主机什么可移动硬件连接在虚拟机上。方式一,必须保证Serial port(Using port COM1)连接在虚拟机上,而Prolific USB-Serial Controller与虚拟机是断开的。

    需要说明的是,前边打钩的代表是连在虚拟机上的,没打勾代表连在主机上。一个硬件或者连接在主机上,或者连接在虚拟机上,只能挂载在一个操作系统下。当一个硬件需要连接到虚拟机操作系统上,比如说U盘挂载到Ubuntu上,发生的动作时:先从主机上卸载,然后挂载到Ubutu上。

在ubuntu下利用minicom实现串口通信第7张

    从下边的图,也可以查看虚拟机当前拥有的硬件有哪些。色彩比较重的代表连接在虚拟机上,相反则连接在主机上。

在ubuntu下利用minicom实现串口通信第8张

3、配置minicom

#minicom -s

     在终端下输入minicom的配置命令,就可以打开配置菜单,选择第三项串口配置(Serial port setup )

在ubuntu下利用minicom实现串口通信第9张

    这里重要的是以下几个选项:

A               设置使用哪个串口设备(因为一台电脑上的串口可能不止一个),注意这里输入的是ttyS0

E               设置波特率、数据位、奇偶校验位、停止位,这里依次是115200,8,N,1

F               这个选项的含义,在下不知,但是网上众多人都说此项必须选成no,否则可能不能通信

在ubuntu下利用minicom实现串口通信第10张

    对于方法一的A选项(设置使用哪个串口设备),可以从/dev目录中看我们用的是哪个设备

在ubuntu下利用minicom实现串口通信第11张

    配置完成后,将其保存成默认配置(Save setup as dfl),然后退出(Exit from Minicom),终端下输入#minicom命令以打开minicom软件。

展示效果图

在ubuntu下利用minicom实现串口通信第12张

方法2--以U转串方式挂载到linux系统中

1、检查是否支持这种方法

    首先看自己的Ubuntu 版本是否自带了U转串驱动,倘若没有,这种方法对你的系统还不适用。执行命令#lsmod | grep usbserial,如果能打印出上边的信息,证明此版本的Ubuntu操作系统自带有U转串驱动(U转

串芯片是PL2303)。

 在ubuntu下利用minicom实现串口通信第13张

    2、配置虚拟机

    对于方法二,没必要添加串口,如下所示的硬件构成(默认配置)已经够了

在ubuntu下利用minicom实现串口通信第14张

    启动虚拟机,确保以下硬件连接方式,Prolific USB-Serial Controller是连接在虚拟上的。倘若你的虚拟机上边添加了一个串口,那么确保这个串口不要启动,即前边没有打钩。

在ubuntu下利用minicom实现串口通信第15张

    对应的在虚拟机的右下角,可以看到Prolific USB-Serial Controller图标是高亮的,而Serial port(Using port COM1)是浅色的(倘若你的虚拟机上添加有串口)。

在ubuntu下利用minicom实现串口通信第16张

3、配置minicom

    在终端上输入#minicom -s命令,选择Serial port setup,打开如下配置界面。这里的E、F选项与方法一一样,需要注意的是:A选项输入的是ttyUSB0。倘若不是这个配置,有可能不能成功通信。

在ubuntu下利用minicom实现串口通信第17张

    以默认配置方式保存,然后退出。输入#minicom命令,启动软件。效果图如下。

在ubuntu下利用minicom实现串口通信第18张

两种方法对比--ttyUSB0对应的是什么

    倘若拔掉U转串,或者Prolific USB-Serial Controller与虚拟机断开连接,在Ubuntu的/dev目录中是没有ttyUSB0的。

    而且,输入命令#lsusb也是看不到U转串对应的信息。

在ubuntu下利用minicom实现串口通信第19张

在ubuntu下利用minicom实现串口通信第20张

    倘若插上U转串,并且确保Prolific USB-Serial Controller与虚拟机断是连接的,这个时候的效果与之前的相反。

在ubuntu下利用minicom实现串口通信第21张

在ubuntu下利用minicom实现串口通信第22张

结论

    ttyUSB0就是U转串在Ubuntu操作系统下对应的设备文件。事实上,方法一把U转串当做是一个实实在在的串口(COM1)挂载在Ubuntu上,在/dev目录下是找不到ttyUSB0,与之对应的设备文件是ttyS0。

    而且,我猜测方法一是不需要Ubuntu的串口驱动的。以虚拟机上Ubuntu的眼光看,U转串是一个实实在在的串口,而非一个虚拟的串口。

其他

    短接串口的2脚和3脚,可以测试串口是否正常工作。正常工作的效果是键盘上输入什么,串口调试助手显示什么。 

 串口接口定义

在ubuntu下利用minicom实现串口通信第23张

1   DCD   Carrier Detect
2   RXD   Receive Data
3   TXD   Transmit Data
4   DTR   Data Terminal Ready
5   GND   System Ground
6   DSR   Data Set Ready
7   RTS   Request to Send
8   CTS   Clear to Send
9   RI    Ring Indicator

参考博客:ubuntu下minicom的安装及使用

免责声明:文章转载自《在ubuntu下利用minicom实现串口通信》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Linux下修改MySQL数据库字符编码为UTF-8解决中文乱码Dotnet中Span, Memory和ReadOnlySequence之浅见下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Linux下使用VirtualBox安装Windows系统

(文档比较长,只是写的详细,实际操作起来相对简单。)由于一些特殊原因,我们并不能完全抛下Windows而使用Linux。VirtualBox 是一款虚拟机软件,支持多系统。在Linux下安装 VirtualBox 后,我们就可以安装Windows系统,并使用Windows下的软件了。1、下载首先需要下载 VirtualBox,下载地址:http://www...

VirtualBox 虚拟机硬盘缓存与系统虚拟缓存对性能的影响测试。

在Linux系统下工作,登录一些网银及某些OA系统总会有浏览器兼容问题。   于是在系统中安装了VirtualBox虚拟机. 安装了Windows XP 系统以备不时之需。   虽然虚拟机的性能已经完全满足一般需要,不过我还是想着将其再尽可能的优化一下,同时为将来Openstack的中的虚拟性能的优化储备一点经验。   记得好像在网上看过一篇文章从理论上...

KVM虚拟化环境准备

1. 概述2. 环境准备2.1 硬件环境2.2 软件环境2.2.1 YUM安装软件包2.2.2 环境检查2.2.3 启动libvirtd服务2.3 网络环境2.3.1 复制网卡配置文件2.3.2 修改网卡配置文件2.3.4 重启网络服务2.3.5 查看验证 1. 概述 本系列博客是想在VMware workstation创建的虚拟机console中...

OpenStack云计算快速入门之三:OpenStack镜像管理

第三部分OpenStack镜像管理 一、简介 很多源都有为OpenStack已经编译好的各种镜像了,您可以直接下载并通过使用这些镜像来熟悉OpenStack。 不过如果是为生产环境进行部署的话,您一定需要构建含有定制软件或配置的镜像文件。不要着急,本章将引领您完成几种较为流行的Linux发行版镜像,最后也将制作一份Windows的镜像。 由不同的Lin...

kvm虚拟机管理(2)

一、virt-manager创建虚机(1)首先通过命令 virt-manager 启动图形界面:点下面的图标创建虚机 (2)给虚机命名为 kvm1,这里选择从哪里启动虚机。如果是安装新的 OS,可以选择第一项。如果已经有安装好的镜像文件,选最后一项(如下图)。  (3)接下来需要告诉 virt-manager 镜像的位置,点击 “Browser” (...

通过宿主主机访问部署在虚拟机上的网站

网站部署在笔记本的虚拟机(CentOS 6.8)上,虚拟机通过桥接的方式联网,网站开启成功,在虚拟机上可以打开,但是在宿主的浏览器打不开,后面百度一下发现是虚拟机的防火墙导致的。关闭虚拟机的防火墙后可以成功打开网站。 service iptables stop //关闭虚拟机的防火墙...