Linux串口调试工具

article/2025/9/15 3:55:36

linux系统下串口调试和应用开发时配合串口调试工具必不可少。下面对常用的一些串口工具做一下汇总,包含:minicom/cutecom/picocom/putty/tty_uart 可供工程师参考。

实验环境:
OS: Ubuntu16.04

----------------------------------------------------------------------------------------------------

minicom
minicom 是一款启动速度快,功能强大的串口终端调试工具,当然缺点就是纯字符界面,没有图形界面的调试工具看起来直观方便,但是它功能十分强大,并且在一些没有屏幕的嵌入式主板上运行颇有用处。安装与使用:

安装:apt-get install minicom

使用流程:

安装完毕后通过命令 “sudo minicom” 运行软件,在配置正确的情况下,软件会自动打开设定的串口,运行界面如下:

如果需要修改设置,那么需要运行 "sudo minicom -s" 重新进行设置。 如下提示代表无法发现串口或没有访问权限:

 首页已经给了使用说明,Minicom 使用经常遇到三个键的组合操作,如 “CTRL-A Z”,这表示先同时按下 CTRL 和 “A”(不区分大写),然后松开此二键再按下 “Z”。按照此方法,打开帮助说明:

面板提供了很多功能,这里只进行串口部分功能演示,按下 “O” 进入配置页,如下:

选择 “Serial port setup” 选项,然后按回车进入串口设置页,如下:

根据系统中的实际串口设备名更改设置即可,设置好以后返回到上一级,选择 “Save setup as dfl” 进行保存即可,然后 Exit。

确保串口设备已经接入后,重新运行 minicom 软件,软件会自动打开并设定目标串口,若未报错即可正常使用串口数据收发等功能。

如连接嵌入式开发板进行通讯演示,类似于串口控制台:

 ----------------------------------------------------------------------------------------------------

cutecom
Linux系统可视化串口应用软件,使用上与Windows系统串口调试工具很类似,下面是安装与使用教程:

安装:apt-get install cutecom 

使用流程:因操作 linux /dev 下面的设备文件默认需要root权限的,运行时需要注意。运行 ''sudo cutecom",界面如下:

 ----------------------------------------------------------------------------------------------------

picocom
效果上类似 minicom 的精简版,设置比较简单,还可以有背景颜色。安装与使用说明:

安装:apt-get install picocom

使用流程:由于软件简介方便,我们直接打出帮助功能,运行 "picocom -h",结果如下:

 帮助页如上,命令选项比较清楚,注意串口的设置需要的命令运行的时候就给出,如执行命令“picocom /dev/ttyCH343USB0 ”,那么执行如下图所示:

 若需要退出软件,需要首先按组合键 Ctrl + a,该组合键是转义功能,之后再按组合键 Ctrl + q,就可以正常退出了。

----------------------------------------------------------------------------------------------------

putty
在线安装:apt-get install putty

离线安装链接:PuTTY Download Linux,安装步骤参考文件夹中 INSTALL 或者 README 文档。

使用流程:

直接运行命令 “putty”,如果是离线安装时未指定安装路径,其默认会安装在 /usr/local/bin 目录下。运行命令,回车,看到熟悉的界面,设置成我们需要的配置,如下所示:

 点击 “Open” 打开后弹出新的界面,如下所示:

----------------------------------------------------------------------------------------------------

tty_uart

tty_uart为linux系统下串口通用应用程序 ,各类常用串口功能已封装成API接口函数供开发者使用。应用软件开源,可供广大工程师开发调试使用。

项目地址:https://github.com/WCHSoftGroup/tty_uarticon-default.png?t=M3C8https://github.com/WCHSoftGroup/tty_uart

功能:

  1. 串口常规参数设定(波特率/数据位/停止位/校验位)
  2. 串口硬件流控
  3. 接收数据实时回显
  4. 串口发送文件或接收串口数据保存至文件
  5. 串口基本读写
  6. MODEM信号读取与设定
  7. 支持获取串口相关计数(modem变化次数/串口帧错误/校验错误/溢出错误)
  8. 支持获取/设定串口serial_struct
  9. 支持同步等待MODEM输入信号变化

用法:

​ 使用gcc编译tty_test.c源文件,如:gcc tty_uart.c -o test,生成可执行文件后运行需要root权限操作串口。

运行命令选项:

  • -D --device tty device to use(指定操作的串口名,未指定则默认操作:/dev/ttyUSB0)
  • -S --speed uart speed(设定的串口波特率)
  • -v --verbose Verbose (show rx buffer)(是否实时显示接收的串口数据)
  • -f --hardflow open hardware flowcontrol(是否打开硬件流控)

源程序串口设置默认为8N1,若需要设定为其他串口格式,可直接修改代码。

串口成功打开后,输入相应字符执行相应操作:

  • s - 设置RTS和DTR有效
  • z - 设置RTS和DTR无效
  • g - 获取MODEM输入引脚状态(CTS、DSR、RING、DCD)
  • h - 同步等待MODEM信号变化(相应操作会阻塞执行,直到信号变化或串口异常退出)
  • b - 发送break信号
  • w - 发送一个字符串
  • r - 读取一次数据
  • f - 选择通过串口发送文件或者接收串口数据保存至文件

举例:

​ sudo ./test -D /dev/ttyCH343USB0 -S 57600 -v(表示以57600波特率操作/dev/ttyCH343USB0串口,并实时显示接收的数据)

以上是常用的 Linux 串口调试与开发工具介绍,欢迎各位工程师讨论补充。


http://chatgpt.dhexx.cn/article/39fLupxE.shtml

相关文章

android js调试工具,鬼鬼JS调试工具

鬼鬼JS调试工具是一款非常实用的JS调试软件,这里带给大家最新版本,新增了一些解密等功能,对于JS调试工作者或者感兴趣的朋友提供稳定和强大的调试支持。鬼鬼JS调试工具具有直观的界面设计,功能十分全面,有需要的朋友欢…

前端必须知道的调试工具

Bug和Debug Bug的起源: 当时人们还在使用第一代真空计算机(马克二型),这种计算机是依靠控制电流来改变开关,从而实现控制,但是它会发出大量的热和光。 1949年9月9日,天气非常炎热&#xff0c…

10个用于C#.NET开发的基本调试工具

在调试软件时,工具非常重要。获取正确的工具,然后再调试时提起正确的信息。根据获取的正确的错误信息,可以找到问题的根源所在。找到问题根源所在,你就能够解决该错误了。 你将看到我认为最基本的解决在C# .NET 中错误问题的工具…

数据库(左、中、右)连接

一分钟让你搞明白 left join、right join和join的区别 首先,我们先来建两张表,第一张表命名为kemu,第二张表命名为score: 一、left join 顾名思义,就是“左连接”,表1左连接表2,以左为主&…

数据库 左连接,右连接,全连接,内连接

准备: 分别创建TB A,B. 插入一些测试数据。 TB_A TB_B 1.内链接 (inner join) 内连接是一种一一映射关系,就是两张表都有的才能显示出来 代码例子: select * from TB_A a inner join TB_B b on a.nameb.name 扩展:这里我突然联想到&#…

数据库的左右连接

连接查询 连接: join 所谓连接查询, 就是多个表查询 连接查询是先生成表记录的笛卡尔积 。 所有可能的对象组合 要领 左连接where只限定查询右表, 右连接where只限定查询左表。 左连接 left Join select * from tbl1 Left Join t…

数据库的左连接与右连接

概念模糊不清,特此整理。 1、有两张表 表TA:A1,A2,A3,AB 表TB:B1,B2,B3,BA 关联字段:AB、BA 2、左连接 SQL: select * from ta a left join tb b on a.ab …

数据库内连接、左连接、右连接详解

用一句话概括就是:左连接就是左边全部保留按条件查出右边,右连接就是右边全部保留按条件查出左边。 说得有点抽象,其实并没有什么难度,还是自己运行下数据库就明白了。 数据库建表语句如下: create database if not …

数据库查询之内连接,左连接,右连接

数据库查询之内连接,左连接,右连接 连接查询 当查询结果的列来源于多张表时,需要将多张表连接成一个大的数据集,再选择合适的列返回 等值连接查询:查询的结果为两个表匹配到的数据 左连接查询:查询的结果为…

数据库中外连接的三种形式(左连接,右连接,全连接)

外连接 左外连接语法格式 Select a.班级信息,a.班级信息, b.姓名, b.联系方式 From班级信息 a left outer** (可省略)join 辅导员信息 b on a.辅导员b.辅导员编号 分析: 右连接 Select a.班级信息,a.班级信息, b.姓名, b.联系方式 From 班…

【Mysql数据库】终于搞懂了左连接、右连接、内连接、全连接

😄作者简介: 小曾同学.com,一个致力于测试开发的博主⛽️,主要职责:测试开发、CI/CD 如果文章知识点有错误的地方,还请大家指正,让我们一起学习,一起进步。😊 座右铭:不想…

数据库的内连接、左连接和右连接

今天在CSDN上看到一个非常浅显易懂的左右连接和内连接的例子,简直秒啊,记录一下 具体演示前提: 创建两个表: 用两个表(a_table 和 b_table),关联字段 a_table.a_id 和 b_table.b_id 来演示一下…

MySQL数据库的内连接、左连接、右连接、全连接/联合查询

目录 1 概念 2 内连接 3 左连接 4 右连接 5 全连接/联合查询 1 概念 内连接 inner join:只返回两个表中连接字段相等的记录。左连接 left join:返回包括左表中的所有记录和右表中连接字段相等的记录。右表中没有则以null显示.右连接 right join&…

数据库中左连接和等值连接

数据库中左连接和等值连接 inner join(等值连接) 只返回两个表中联结字段相等的行 left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录 例如: 我们先创建两个表&am…

数据库左连接、右连接、内连接、全连接笔记

原英文文章链接:https://www.codeproject.com/Articles/33052/Visual-Representation-of-SQL-Joins 准备 表A: -- auto-generated definition CREATE TABLE table_a (PK INT(10) NOT NULLPRIMARY KEY,Value VARCHAR(25) NULL )COMMENT 表A;表B&#xff1a…

Spring Boot整合Mybatis及事务处理

MyBatis为了方便与Spring Boot集成,专门提供了一个符合其规范的starter项目mybatis-spring-boot-starter。因此,我们只需在pom.xml添加相关依赖即可轻松集成。下面介绍了Spring Boot整合Mybatis的具体步骤以及事务使用(包含解决事务失效的坑&…

Mybatis-事务管理,事务配置

事务的特征– 1.原子性 事务是数据库的逻辑工作单位,事务中包括的所有操作,要么全做,要么全部做 2.一致性 事务执行的结果必须是使数据库从一个一致性状态飙到另一个一致性状态,一致性与原子性是密切相关 3.隔离性 一个事务的执行…

springboot+mybatis整合配置事务详解(^_^)

springboot集成mybatis有三种方式: 一、最简单的方式就是使用MyBatis官方提供的 mybatis-spring-boot-starter。 二、另一种使用spring-mybatis包的xml配置方式,这样需要自己写一些代码,但可以更灵活的控制mybatis的各项配置。 三、使用引…

第08篇:Mybatis事务处理

一、Jdk底层实现 Java JDK中提供了标准接口Connection,不同的数据库驱动负责具体的实现。后面无论是Spring还是Mybatis对事务的处理,无论怎么的封装,最终究其到底都是由Connection来提供的能力。 public interface Connection extends Wrapper, AutoCloseable { …

Mybatis中的事务提交

数据表不支持事务,mybatis会直接提交数据,即增删改不需要commit(MyISAM引擎不支持事务); 数据表支持事务,默认mybatis需要手动提交事务,也可以设置为自动提交,如下 (设…