ubuntu 查看一个串口的信息

1.概要

1.记忆要点

stty -F /dev/ttyS0 -a
setserial -g /dev/ttyS0

2.内容

在 Ubuntu 系统中查看串口(如 /dev/ttyS0 或 /dev/ttyUSB0)的波特率等配置信息,可以通过以下方法操作:


方法 1:使用 stty 命令

stty -F /dev/ttyS0 -a
  • 作用:直接显示串口的详细配置(包括波特率、数据位、停止位等)。
  • 输出示例
    speed 9600 baud; line = 0;
    intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>;
    eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
    werase = ^W; lnext = ^V; discard = ^O; min = 1; time = 0;
    • speed 9600 baud 表示当前波特率为 9600。

方法 2:使用 setserial 命令

sudo setserial -g /dev/ttyS0
  • 作用:显示串口的底层硬件配置(如波特率基址、除数等)。
  • 输出示例
    /dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
    • 波特率可能通过 baud_base 和 divisor 计算(需结合驱动配置)。

方法 3:查看 /sys 文件系统

cat /sys/class/tty/ttyS0/device/driver/ttyS0/baud_base
  • 作用:直接读取内核中记录的波特率基址(需结合除数计算实际波特率)。

步骤总结

  1. 确认串口设备名

    dmesg | grep tty # 查看最近连接的串口设备
    ls /dev/ttyS* /dev/ttyUSB* # 列出所有串口设备

    查看配置

    stty -F /dev/ttyS0 -a # 推荐方法
    sudo setserial -g /dev/ttyS0
  2. 权限问题

    • 如果提示权限不足,使用 sudo 或以当前用户加入 dialout 组:
      sudo usermod -aG dialout $USER

注意事项

  • 如果串口未被占用,stty 可能无法读取配置,需先打开设备(如使用 screen 或 minicom)。
  • 波特率可能由硬件或驱动程序固定,需结合设备文档确认。

3.关联链接

关于串口测试的链接-优快云博客

4.关联知识 

<think> 我们在Ubuntu查看串口信息,通常需要知道串口设备地址、设备详细信息串口参数等。 步骤: 1. 查找串口设备:通常位于/dev/目录下,如ttyUSB0, ttyACM0等。 2. 使用工具查看详细信息:比如使用dmesg、setserial、udevadm等。 以下为具体方法: </think> 在Ubuntu系统中查看串口设备的详细信息,可通过以下多种方法实现: --- ### **1. 列出所有串口设备** ```bash ls /dev/tty* # 列出所有串口设备文件 ``` 典型输出: ``` /dev/tty /dev/tty23 /dev/tty39 /dev/tty54 /dev/ttyS0 /dev/tty0 /dev/tty24 /dev/tty4 /dev/tty55 /dev/ttyS1 /dev/ttyUSB0 # ← USB转串口设备 /dev/ttyACM0 # ← CDC ACM设备(如Arduino) ``` --- ### **2. 查看设备详细信息** **方法1:`dmesg`日志分析** ```bash dmesg | grep tty ``` 输出示例: ``` [ 2.000000] 00:0a: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A [ 1234.567890] usb 1-1.2: FTDI USB Serial Device converter now attached to ttyUSB0 ``` **方法2:`udevadm`查询** ```bash udevadm info --query=all --name=/dev/ttyUSB0 ``` 输出包含: ``` ID_MODEL=FT232R_USB_UART ID_VENDOR=FTDI ID_SERIAL=FTDI_FT232R_USB_UART_00000000 ``` --- ### **3. 获取串口参数信息** **方法1:`stty`命令** ```bash stty -F /dev/ttyUSB0 -a # 查看所有参数 ``` 输出示例: ``` speed 9600 baud; line = 0; -brkint -imaxbel ``` **方法2:`setserial`工具** ```bash sudo apt install setserial sudo setserial -g /dev/ttyS* # 查看原生串口 ``` 输出: ``` /dev/ttyS0, UART: 16550A, Port: 0x03f8 ``` --- ### **4. 图形界面查看** 使用`GNOME Disks`工具: 1. 安装:`sudo apt install gnome-disk-utility` 2. 打开"磁盘"应用 → 选择USB设备 → 查看分区信息 --- ### **5. Python脚本获取串口信息** ```python import serial.tools.list_ports ports = serial.tools.list_ports.comports() for p in ports: print(f"设备: {p.device}") print(f"名称: {p.name}") print(f"描述: {p.description}") print(f"硬件ID: {p.hwid}") print(f"厂商ID: {p.vid if p.vid else '未知'}") print(f"产品ID: {p.pid if p.pid else '未知'}") print("-" * 30) ``` 运行前安装:`pip install pyserial` --- ### **特殊设备查看** - **USB转串口芯片信息**: ```bash lsusb | grep -i serial # 过滤串口设备 ``` - **蓝牙虚拟串口**: ```bash rfcomm -a # 列出所有蓝牙绑定设备 ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值