You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Arduino向Linux终端串口通信无输出问题求助

Arduino串口输出到Linux终端为空的排查与解决

首先你的Arduino代码存在语法错误,setup()函数缺少闭合的},这会导致代码无法正常编译运行,自然不会产生任何串口输出。

修正后的代码

void setup() {
  Serial.begin(9600); // 初始化串口,波特率9600
}

void loop() {
  float zby = 4.54;
  Serial.println(zby); // 打印浮点数到串口
  delay(1000); // 延迟1秒
}

后续排查步骤

  • 修复代码语法错误:先确保代码能正常编译上传,这是串口输出正常的基础。
  • 获取Linux串口访问权限:普通用户默认没有串口访问权限,执行以下命令将用户加入dialout组,注销后重新登录生效:
    sudo usermod -aG dialout $USER
    
  • 匹配串口波特率:终端工具的波特率必须和代码中的9600一致,比如用screen打开串口:
    screen /dev/ttyUSB0 9600
    
    注意替换/dev/ttyUSB0为你的Arduino实际串口设备(可通过ls /dev/tty*对比插拔前后的设备变化确认)。
  • 检查物理连接:确认使用的是带数据传输功能的USB线(非仅充电线),Arduino的USB接口接触良好。
  • 树莓派端异常排查:如果树莓派能收到部分内容,可能是以下原因:
    • 串口被系统服务占用:通过raspi-config关闭串口控制台(路径:Interface Options → Serial Port,关闭控制台功能,保留硬件串口)。
    • 供电不稳定:树莓派给Arduino供电可能不足,建议给Arduino单独供电。

内容的提问来源于stack exchange,提问作者دحووم

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 08:10:48