minicom指令_如何优雅地使用minicom

minicom指令_如何优雅地使用minicomminicom简介安装minicom是linux下一款常用的串口调试工具。ubuntu环境下,使用如下命令安装sudoapt-getinstallminicom配置使用前需要进行配置,执行sudominicom-s可打开minicom并进入配置模式,使用方向键,选择需要配置的项目,如Serialportsetup,回车进入配置,可以看到多个配置项,此时光标在最下方。需要修改某个配…

大家好,又见面了,我是你们的朋友全栈君。

minicom简介

安装

minicom是linux下一款常用的串口调试工具。ubuntu环境下,使用如下命令安装

sudo apt-get install minicom

配置

使用前需要进行配置,执行

sudo minicom -s

可打开minicom并进入配置模式,使用方向键,选择需要配置的项目,如 Serial port setup ,回车进入配置,可以看到多个配置项,此时光标在最下方。

需要修改某个配置,则输入对应的字母,光标即会跳转到对应的项,编辑后,回车确认,光标再次回到最下方。

一般而言,需要修改

A – Serial Device

E – Bps/Par/Bits

F – Hardware Flow Control

A配置项,指定USB设备。一般USB转串口会生成设备/dev/ttyUSBx,x是数字序号。可以执行以下命令确认下

ls -l /dev/ttyUSB*

E配置项,根据实际情况,指定波特率等参数

F配置项,硬件流控,要看你的设备是否有。如果没有,或者你不确定的话,可以先关掉,将默认的Yes切换为No.

修改好之后,回车退到上一个界面,此时记得往下,选择 Save setup as dfl 将刚刚的修改保存为默认配置,避免下次使用还需要再次配置。

最后,选择 Exit 会退出配置界面,并打开minicom。选择 Exit from Minicom 则会直接退出minicom。

退出

minicom使用前缀按键 Ctrl-A,即执行特殊操作时,都需要先按 Ctrl+A,再按某个按键使用对应的功能。

Ctrl+A,再按 Z, 可查看帮助,从帮助可以看到,退出时,要先按 Ctrl+A,再按 X

配置权限

minicom 本身不需要sudo权限,但因为要打开串口设备/dev/xxx ,所以一般会需要使用sudo来启动minicom。

这里我们可以修改下串口设备的权限,这样以后就不用使用sudo了。

方式一:使用命令更改

简单粗暴地使用chmod命令修改

sudo chmod 666 /dev/ttyUSB0

方式二:配置udev规则(推荐)

修改配置文件

sudo vim /etc/udev/rules.d/70-ttyusb.rules

增加一行

KERNEL==”ttyUSB[0-9]*”, MODE=”0666″

修改后,需要重新插拔设备,以重新生成设备节点。

自动设置设备名

如果日常只用一个设备,设备名固定是/dev/ttyUSB0,那每次直接打开minicom即可。

但当你可能需要使用多个串口时,问题就来了,每次需要先查看下设备名

ls /dev/ttyUSB*

再配置下minicom,手工改成这个设备,才能使用。一点都不方便。

这里给出两种解决方式

方式一:自动修改配置文件

首先建立配置文件

sudo vim /etc/minicom/minirc.ttyUSBx

内容如下

# Machine-generated file – use “minicom -s” to change parameters.

pu port /dev/ttyUSB0

pu rtscts No

编写脚本~/.myminicom.sh,自动检测设备,并根据选择的设备,修改配置文件,再打开minicom

com() {

ports=`ls /dev/ttyUSB*`

select port in $ports;do

if [ $port ]; then

echo “You select the choice ‘$port'”

port=${port##*/}

sed -i “s/\(pu port .*\/dev\/\).*/\1$port/” /etc/minicom/minirc.ttyUSBx

exec minicom ttyUSBx $@

break

else

echo “Invaild selection”

fi

done

}

在~/.bashrc中引入此函数

echo ‘source ~/.myminicom.sh’ >> ~/.bashrc

source ~/.bashrc

即可直接使用命令 com 调用此函数,自动列出设备,按数字键选择即可。

方式二:使用参数指定设备(推荐)

研究下mincom的参数后,发现有更简单的实现方式,使用minicom的-D参数。

同样编写脚本~/.myminicom.sh

com() {

ports_USB=$(ls /dev/ttyUSB*)

ports_ACM=$(ls /dev/ttyACM*) #arduino

ports=”$ports_USB $ports_ACM”

select port in $ports;do

if [ “$port” ]; then

echo “You select the choice ‘$port'”

minicom -D “$port” $@”

break

else

echo “Invaild selection”

fi

done

}

在~/.bashrc中引入此函数

echo ‘source ~/.myminicom.sh’ >> ~/.bashrc

source ~/.bashrc

添加完毕后,可使用 com 命令调用。

使用效果

zhuangqiubin@zhuangqiubin-PC:~$ com

1) /dev/ttyUSB0

2) /dev/ttyUSB1

#?

此时输入数字,选择要的打开的串口设备,回车即可。

自动保存log

让 minicom 自动保存log,可以方便调试。

查看参数,minicom可以使用 -C 参数指定保存log文件。于是完善脚本,自动把log以日期命名,保存到/tmp目录下。

注意,tmp目录关机即清空,如果想持久保存log,需要修改到其他目录。

修改后脚本如下

com() {

ports_USB=$(ls /dev/ttyUSB*)

ports_ACM=$(ls /dev/ttyACM*) #arduino

ports=”$ports_USB $ports_ACM”

datename=$(date +%Y%m%d-%H%M%S)

select port in $ports;do

if [ “$port” ]; then

echo “You select the choice ‘$port'”

minicom -D “$port” -C /tmp/”$datename”.log “$@”

break

else

echo “Invaild selection”

fi

done

}

暂停输出

Ctrl+A 是mimicom的特殊功能前缀按键,但还有另一个很实用的作用,就是暂停屏幕输出。

在设备开始大量输出log时,基本看不清屏幕内容。此时可以按 Ctrl+A,暂停输出,方便查看所需log。

打开minicom时间戳

在minicom中,按下 Ctrl+A,再按 N,即可激活时间戳,在每行log前添加当前系统的时间戳。

用于观察启动时间之类的,还是比较方便。

发送接收文件

设备端支持的话,按下 Ctrl+A,再按 S,即可向设备端发送文件。

按 Ctrl+A,再按 R,可接收文件。

自动换行

当你的log中可能存在,单行长度超过屏幕宽度的log时(比如启动时打印的kernel cmdline),可以使用mimicom的自动换行功能。

在启动minicom时加上 -w 选项,或者在minicom中,按 Ctrl+A 再按 W。

更多功能

可以使用 minicom -h 查看,也可在mincon中,按 Ctrl+A 再按 Z 查看。

有什么其他使用功能或技巧,也欢迎留言告诉我。

源码

如果觉得本文对你有帮助的的话,顺手点下推荐哦~~

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/133428.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • win10重置网络命令_WIN10重置网络的操作方法

    win10重置网络命令_WIN10重置网络的操作方法近日有一些小伙伴咨询小编关于 WIN10 怎样重置网络呢 下面就为大家带来了 WIN10 重置网络的具体方法 有需要的小伙伴可以来了解了解哦 WIN10 重置网络的操作方法操作方法一 通过设置重置网络除可以通过命令重置网络 也可以在 Win10 设置中进行网络设置 具体操作如下 从 Win10 左下角的开始菜单中 点击打开 设置 然后进入 网络和 internet 设置 在网络设置界面的 右侧 状态 界面下拉

    2025年10月21日
    3
  • 机器学习案例——鸢尾花数据集分析

    机器学习案例——鸢尾花数据集分析    前几天把python基础知识过了一遍,拿了这个小例子作为练手项目,这个案例也有师兄的帮助,记录完,发现代码贴的很多,文章有点长,为了节省篇幅,有一些说明就去掉了,毕竟鸢尾花数据集比较经典,网上能找到很多和我差不多的案例。还有就是发现一个新的markdown排版工具,今天想试试效果。数据来源    首先说一下,该数据集来源于网络。Iris也称鸢尾花卉数据集,是一类多重变量分析的数……

    2022年10月3日
    2
  • Redis Sentinel实现Failover

    Redis Sentinel实现Failover

    2021年9月9日
    66
  • 放松解压电影_最新电影下载

    放松解压电影_最新电影下载经典高清电影合集170GBT种子下载点击文件名下载经典高清电影合集170GBT种子.torrent下载方法经典高清电影合集详情见目录:1.杀手472.这个杀手不太冷3.放牛班的春天

    2022年8月4日
    11
  • Linux防火墙详解「建议收藏」

    Linux防火墙详解「建议收藏」防火墙介绍inux防火墙主要工作在网络层,属于典型的包过滤防火墙。在RHEL中常用的有两种火墙工具iptables和firewalld,但软件本身其实并不具备防火墙功能,他们的作用都是在用户空间中管理和维护规则,只不过规则结构和使用方法不一样罢了,真正利用规则进行过滤是由内核netfilter完成的。netfilterIP信息包过滤系统是一种功能强大的工具,可用于添加、编辑和除去规则,这些规则是在做信息包过滤决定时,防火墙所遵循和组成的规则。这些规则存储在专用的信息包过滤表中,而这些表集成在Lin

    2022年9月22日
    2
  • offsetof 例子「建议收藏」

    offsetof 例子「建议收藏」
    /*offsetofexample*/
    #include”stdafx.h”
    #include
    #include
    /************************************************************************/
    /*MacroOBJECT_HEAD_ADDRESS:calculatethestruct’saddress

    2022年8月22日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号