Linux下怎么使用minicom USB串口

66次阅读
没有评论

共计 8610 个字符,预计需要花费 22 分钟才能阅读完成。

自动写代码机器人,免费开通

这篇文章主要介绍 Linux 下怎么使用 minicom USB 串口,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

Linux 下查看串口信息

查看串口是否可用,可以对串口发送数据比如对 com1 口,echo helloworld /dev/ttyS0

查看串口名称使用 ls -l  /dev/ttyS* 一般情况下串口的名称全部在 dev 下面,如果你没有外插串口卡的话默认是 dev 下的 ttyS*, 一般 ttyS0 对应 com1,ttyS1 对应 com2,当然也不一定是必然的;

查看 usb 设备 lsusb

查看串口驱动:cat /proc/tty/drivers/serial

[root@dy root]# cat /proc/tty/driver/* serinfo:1.0 driver revision: 0: uart:MPC52xx PSC mmio:0x80011300 irq:40 tx:10 rx:129 CTS|DSR|CD usbserinfo:1.0 driver:2.0

例如,在终端输入:dmesg | grep  tty 显示从系统启动到现在串口插入拔出的信息,让后我在电脑上插入一个 usb 转 rs232 线,再在终端输入:dmesg | grep tty,会显示:usb  2-2.1:pl2303 converter now attached to ttyUSB0; 可以通过此法确定我新插入的串口线对应的串口号。

minicom 是 linux 下串口通信的软件,它的使用完全依靠键盘的操作,虽然没有“超级终端”那么易用,但是使用习惯之后读者将会体会到它的高效与便利,下面将讲解 minicom 的安装和配置。

一、安装 minicom:

使用以下命令:

# sudo apt-get install minicom

以下为安装的详细信息:

# sudo apt-get install minicom

正在读取软件包列表 … 完成

正在分析软件包的依赖关系树

正在读取状态信息 … 完成

将会安装下列额外的软件包:

lrzsz

下列【新】软件包将被安装:

lrzsz minicom

共升级了 0 个软件包,新安装了 2 个软件包,要卸载 0 个软件包,有 2 个软件未被升级。

需要下载 270kB 的软件包。

解压缩后会消耗掉 1389kB 的额外空间。

您希望继续执行吗?[Y/n]y

获取:1 http://ubuntu.uestc.edu.cn hardy/universe lrzsz 0.12.21-4.1 [97.0kB]

获取:2 http://ubuntu.uestc.edu.cn hardy/main minicom 2.3~rc1-2 [173kB]

下载 270kB,耗时 1s (184kB/s)

选中了曾被取消选择的软件包 lrzsz。

(正在读取数据库 … 系统当前总共安装有 101203 个文件和目录。)

正在解压缩 lrzsz (从 …/lrzsz_0.12.21-4.1_i386.deb) …

选中了曾被取消选择的软件包 minicom。

正在解压缩 minicom (从 …/minicom_2.3~rc1-2_i386.deb) …

正在处理用于 man-db 的触发器 …

正在设置 lrzsz (0.12.21-4.1) …

正在设置 minicom (2.3~rc1-2) …

PS:ubuntu 现在做的真是没话说,相当的实用和智能啊,把相关的依赖包 (lrzsz) 都相互关联并且安装上去了。但是如果使用 ubuntu  8.10 以前的版本可能就要单独安装 lrzsz 软件包了(lrzsz 包括了 x /y/zmodem 协议)。也就是说,在通过串口用 xmodem 协议烧写内核   时会提示没有 xmodem 协议,所以这时就要安装 lrzsz 软件包了:

# sudo apt-get install lrzsz

然后就可以正常地使用 minicom 通过串口烧写内核了。

二、配置 minicom:

1、在使用 minicom 之前,首先要保证你对串口有读 / 写的权限。我们知道,Linux 的设备对应于 /dev/ 目录中的某个文件,串口 COM1 对应 ttyS0,COM2 对应 ttyS1,使用以下命令来查看你对 COM1 的权限:

$ ls -l /dev/ttyS0
crw-rw---- 1 root dialout 4, 64 2009-08-01 11:05 /dev/ttyS0

可以看到,它的属主是 root。

2、正如在 Windows 中要配置超级终端一样,在使用 minicom 之前,先要对串口进行配置。

运行

# sudo minicom -s

选择 Serial port setup,此时所示光标在 Change which  setting 上,键入 A,此时光标移到第 A 项对应处:串口 COM1 对应 ttyS0,COM2 对应 ttyS1(注意选择)。

然后对波特率,数据位和停止位进行配置,键入 E,波特率选为 115200  8N1(数据位 8,奇偶校验无,停止位 1),硬 / 软件流控制分别键入 F 和 G,并且都选 No。在确认配置正确之后,可键入回车返回上级配置界面,并   将其保存为默认配置(即 save setup as dfl)。***,选择 Exit from Minicom 命令退出。

注意:非正常关闭 minicom,会在 /var/lock 下创建几个文件 LCK*,这几个文件阻止了 minicom 的运行,将它们删除后即可恢复

具体的配置信息如下所示:

Serial port setup [Enter]

+-------------------------------------------------------------+ | A - Serial Device : /dev/ttyUSB0 | | B - Lockfile Location : /var/lock | | C - Callin Program : | | D - Callout Program -: | | E - Bps/Par/Bits : 115200 8N1 | | F - Hardware Flow Control : No | | G - Software Flow Control : No | | | | Change which setting? | +-------------------------------------------------------------+

注意:如果没有使用 USB 转串口,而是直接使用串口,那么 Serial Device 要配置为 /dev/ttyS0。

然后重启 minicom(即直接在 shell 下执行 minicom 命令就可以进入 minicom 的控制台)使刚才的配置生效,再连上开发板的串口线后,就可以在 minicom 中打印出正确的串口信息了。在控制台下通过组合键 Ctrl+A  Z 可以进入 minicom 菜单。

组合键的用法是:先按 Ctrl+ A 组合键,然后松开这两个键,再按 Z 键。另外还有一些常用的组合键。

(1)S 键:发送文件到目标系统中;

(2)W 键:自动卷屏。当显示的内容超过一行之后,自动将后面的内容换行。这个功能在查看内核的启动信息时很有用。

(3)C 键:清除屏幕的显示内容;

(4)B 键:浏览 minicom 的历史显示;

(5)X 键:退出 mInicom,会提示确认退出。

3、配置文件所在目录

Ctrl + A — O

+-----[configuration]------+ | Filenames and paths | | File transfer protocols -| | Serial port setup | | Modem and dialing | | Screen and keyboard | | Save setup as dfl | | Save setup as.. | | Exit | +--------------------------+

选择 Filenames and paths

+-----------------------------------------------------------------------+ | A - Download directory : /home/crliu | | B - Upload directory : /tmp | | C - Script directory : | | D - Script program : runscript | | E - Kermit program : | | F - Logging options | | | | Change which setting? | +-----------------------------------------------------------------------+

(1)A – download 下载文件的存放位置(开发板 — PC)

开发板上的文件将被传输到 PC 机上的 /home/crliu 目录下。

(2)B – upload 从此处读取上传的文件(PC — 开发板)

PC 机向开发板发送文件,需要发送的文件在 /tmp 目录下(PC 机上的目录)。做了此项配置后,每次向开发板发送文件时,只需输入文件名即可,无需输入文件所在目录的绝对路径。

三、Linux 下如何使用 USB 转串口设备

对没有串口的笔记本持有者来说,做硬件开发经常为没有串口而烦恼,不过现在有了 USB 转串口设备。但是新的问题又出现了,比如说对于 Minicom 下的 PC 机和目标机通信还是存在着一些配置问题,下面就说一下 linux 下 USB 转串口的具体配置和问题:

注意:默认情况下 ubuntu 已经安装了 USB 转串口驱动(pl2303)。

1、# lsmod | grep usbserial

如果有 usbserial,说明系统支持 USB 转串口。

2、插上 USB 转串口,在终端输入命令 #dmesg | grep ttyUSB0,如果出现连接成功信息,则说明 ubuntu 系统已经识别该设备了。

注意:虚拟机环境下的 ubuntu 默认情况下是不能自动识别的,需要在虚拟机窗口右下角点击 Prolific USB-Serial  Controller,然后选择 Connect (Disconnect from Host),这样才能被 ubuntu 系统识别。

3、在上面 minicom 的配置中设置 Serial Device:  /dev/ttyUSB0,重启开发板,这样基本上就可以正常使用 minicom 来打印串口信息了。

4、问题

如果经过上面的步骤 minicom 还是不能正常工作,出现如下错误提示:

# sudo minicom

minicom: cannot open /dev/ttyUSB0: 没有该文件或目录

这时可以尝试换一个 USB 口,然后再次操作以上流程。如果还是提示这个错误,那么可以使用下面的方法来解决。

这种方法是在硬件里添加串口设备,将 window 下的设备添加到虚拟机里。也就是 说,要在 window 获得焦点的时   候加入 usb 转串口,然后再到虚拟机下将这个设备添加进去,这时就可以在 ubuntu 下查看添加的这个设备的设备文件,一般是 /dev/tty0 或者  /dev/ttyS0。

这种方法其实是将 window 的 usb 转串口作为虚拟机的串口,所以就是 tty0 或者 ttyS0 了,而不是真正在 ubuntu 下加载的。

具体步骤如下:

(1)打开虚拟机环境,然后选择 VM– Settings(Ctrl+D)。

(2)点 Add,进入添加硬件向导,选择 Serial Port,点 Next。

(3)选择 *** 项 Use physical port on the host,点 Next。

(4)选择 Physical serial port 方式为 Auto detect,勾选 Connect at power  on,点 Finish 完成。

(5)然后在上面 minicom 的配置中设置 Serial Device: /dev/tty0 或者 Serial Device:  /dev/ttyS0,重启开发板,这样就可以正常运行 minicom 了。

Linux 下如何使用 USB 转串口设备

对没有串口的笔记本持有者来说,做硬件开发经常为没有串口而烦恼,不过现在有了 USB 转串口设备。但是新的问题又出现了,比如说对于 Minicom 下的 PC 机和目标机通信还是存在着一些配置问题,下面就说一下 linux 下 USB 转串口的具体配置和问题:

注意:默认情况下 ubuntu 已经安装了 USB 转串口驱动(pl2303)。

1、# lsmod | grep usbserial

如果有 usbserial,说明系统支持 USB 转串口。

2、插上 USB 转串口,在终端输入命令 #dmesg | grep ttyUSB0,如果出现连接成功信息,则说明 ubuntu 系统已经识别该设备了。

注意:虚拟机环境下的 ubuntu 默认情况下是不能自动识别的,需要在虚拟机窗口右下角点击 Prolific USB-Serial  Controller,然后选择 Connect (Disconnect from Host),这样才能被 ubuntu 系统识别。

3、在上面 minicom 的配置中设置 Serial Device:  /dev/ttyUSB0,重启开发板,这样基本上就可以正常使用 minicom 来打印串口信息了。

4、问题

如果经过上面的步骤 minicom 还是不能正常工作,出现如下错误提示:

# sudo minicom
minicom: cannot open /dev/ttyUSB0:  没有该文件或目录

这时可以尝试换一个 USB 口,然后再次操作以上流程。如果还是提示这个错误,那么可以使用下面的方法来解决。

这种方法是在硬件里添加串口设备,将 window 下的设备添加到虚拟机里。也就 是说,要在 window 获得焦点的时   候加入 usb 转串口,然后再到虚拟机下将这个设备添加进去,这时就可以在 ubuntu 下查看添加的这个设备的设备文件,一般是 /dev/tty0 或者  /dev/ttyS0。

这种方法其实是将 window 的 usb 转串口作为虚拟机的串口,所以就是 tty0 或者 ttyS0 了,而不是真正在 ubuntu 下加载的。

具体步骤如下:

(1)打开虚拟机环境,然后选择 VM– Settings(Ctrl+D)。 

(2)点 Add,进入添加硬件向导,选择 Serial Port,点 Next。 

(3)选择 *** 项 Use physical port on the host,点 Next。

(4)选择 Physical serial port 方式为 Auto detect,勾选 Connect at power  on,点 Finish 完成。 

(5)然后在上面 minicom 的配置中设置 Serial Device: /dev/tty0 或者 Serial Device:  /dev/ttyS0,重启开发板,这样就可以正常运行 minicom 了。

————————

使用

Minicom 是基于窗口的。要弹出所需功能的窗口,可按下 Ctrl-A (以下

使用 C - A 来表示 Ctrl-A), 然后再按各功能键(a- z 或 A -Z)。先按 C -A,再

按 z,将出现一个帮助窗口,提供了所有命令的简述。配置 minicom

(-s 选项,或者 C -A、O)时,可以改变这个转义键,不过现在我们还

是用 Ctrl- A 吧。

以下键在所有菜单中都可用:

UP arrow-up 或 k

DOWN arrow-down 或 j

LEFT arrow-left 或 h

RIGHT arrow-right 或 l

CHOOSE Enter

CANCEL ESCape.

屏幕分为两部分:上部 24 行为终端模拟器的屏幕。ANSI 或 VT100 转义

序列在此窗口中被解释。若底部还剩有一行,那么状态行就放在这儿;

否则,每次按 C - A 时状态行出现。在那些有专门状态行的终端上将会

使用这一行,如果 termcap 信息完整且加了 - k 标志的话。

下面按字母顺序列出可用的命令:

C-A 两次按下 C - A 将发送一个 C - A 命令到远程系统。如果你把 转义字符

换成了 C - A 以外的什么字符,则对该字符的工作方式也类似。

A 切换 Add Linefeed 为 on/off。若为 on,则每上回车键在屏幕上

显示之前,都要加上一个 linefeed。

B 为你提供一个回卷 (scroll back) 的缓冲区。可以按 u 上卷,按 d 下卷,

按 b 上翻一页,按 f 下翻一页。也可用箭头键和翻页键。可用 s 或 S 键

(大小写敏感)在缓冲区中查找文字串,按 N 键查找该串的下一次出现。

按 c 进入引用模式,出现文字光标,你就可以按 Enter 键指定起始行。

然后回卷模式将会结束,带有前缀 的内容将被发送。

C 清屏。

D 拨一个号,或转向拨号目录。

E 切换本地回显为 on/off (若你的 minicom 版本支持)。

F 将 break 信号送 modem。

G 运行脚本(Go)。运行一个登录脚本。

H 挂断。

I 切换光标键在普通和应用模式间发送的转义序列的类型(另参下面

关于状态行的注释)。

J 跳至 shell。返回时,整个屏幕将被刷新(redrawn)。

K 清屏,运行 kermit, 返回时刷新屏幕。

L 文件捕获开关。打开时,所有到屏幕的输出也将被捕获到文件中。

M 发送 modem 初始化串。若你 online,且 DCD 线设为 on,则 modem 被初始化

前将要求你进行确认。

O 配置 minicom。转到配置菜单。

P 通信参数。允许你改变 bps 速率,奇偶校验和位数。

Q 不复位 modem 就退出 minicom。如果改变了 macros,而且未存盘,

会提供你一个 save 的机会。

R 接收文件。从各种协议 (外部) 中进行选择。若 filename 选择窗口和下

载目录提示可用,会出现一个要求选择下载目录的窗口。否则将使用

Filenames and Paths 菜单中定义的下载目录。

S 发送文件。选择你在接收命令中使用的协议。如果你未使文件名选择

窗口可用(在 File Transfer Protocols 菜单中设置),你将只能在一

个对话框窗口中写文件名。若将其设为可用,将弹出一个窗口,显示

你的上传目录中的文件名。可用空格键为文件名加上或取消标记,用

光标键或 j / k 键上下移动光标。被选的文件名将高亮显示。目录名在

方括号中显示,两次按下空格键可以在目录树中上下移动。***,按

Enter 发送文件,或按 ESC 键退出。

T 选择终端模拟:ANSI(彩色)或 VT100。此处还可改变退格键,打开或

关闭状态行。

W 切换 linewrap 为 on/off。

X 退出 minicom,复位 modem。如果改变了 macros,而且未存盘,会提供

你一个 save 的机会。

Z 弹出 help 屏幕。

2.1 修改 在终端输入如下指令

[plain] view plaincopyprint?

sudo nano /boot/cmdline.txt

[plain] view plain copy

print?

sudo nano /boot/cmdline.txt

打开后将红色部分删除

dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200  console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait

删除后,变成如下结果保存退出

dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4  elevator=deadline rootwait

2.2 修改 /etc/inittab

在终端输入如下指令

$sudo nano /etc/inittab

打开后将 *** 一行注释掉 在前面加上一个 #号即可

#T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100

3. 修改完毕后,需要在树莓派上安装一个 minicom,这里的 minicom 是 Linux 平台的串口调试工具,相当于 Windows 上的串口调试助手

3.1 安装 minicom,输入以下命令

$ sudo apt-get install minicon

3.2 安装完毕后需要对 minicom 进行配置,此处配置文件需要 root 权限,不然无法保存配置的参数,那么在命令行中输入如下命令

$ sudo passwd root

执行此命令后系统会提示输入两遍的 root 密码,输入你想设的密码即可,然后在执行

$ sudo passwd --unlock

这样就解锁了 root 账户

3.3 切换到 root 账户,再次打开命令行,输入 minicom 参数配置命令

$ minicom -s

在主菜单的第三项 Serial Port Setup, 进入下一级菜单,根据菜单项的提示字母选择,按 A 将串口设备修改为 /dev/ttyAMA0

, 按 E 将波特率修改为 9600 或者自己需要的数值,设置好以后返回主菜单,选择 Save Setup as Dfl

然后选择 Exit,此时如果正常的话就可以进行串口收发了,这里我的树莓派是连接到一台 PC 上去的,我利用 PC 的串口调试软件成功进行了收发

tips: 按 CTRL+A, 接着按 Z 可以查看 minicom 的帮助

以上是“Linux 下怎么使用 minicom USB 串口”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注丸趣 TV 行业资讯频道!

向 AI 问一下细节

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-07发表,共计8610字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)