嵌入式协同开发实战:用 SecureCRT 串口排查 Web 问题与修改设备 IP
前言
作为 Web 前端开发者,在嵌入式设备项目中,很多问题光看浏览器 Console和 断点是定位不到的——设备端的服务是否启动、配置是否正确、网络是否通,都需要直接"进设备"看。掌握 SecureCRT 串口调试,是嵌入式协同开发中一项非常实用的技能:通过串口我们可以查看设备日志、进入 Shell 执行命令、修改网络配置,从而快速排查 Web 页面打不开、接口不通、设备失联等问题。本文以一次真实的"修改设备 IP"流程为例,记录整个过程,供大家参考。
一、SecureCRT 简介
SecureCRT 是一款终端仿真软件,支持 SSH、Telnet、Serial(串口)等协议。在嵌入式开发中,我们最常用的是它的串口功能:用串口线把设备和电脑连接起来,打开软件建立会话,即使设备没有网络,我们依然可以登录设备。
通过串口我们可以做很多事:
- 查看设备日志:实时观察设备启动过程和运行日志
- 执行 Shell 命令:查看进程、网络状态、配置文件
- 修改网络配置:在设备失联时重新配置 IP
- 配合抓包分析:确认设备的网络请求是否正常发出,辅助定位 Web 接口问题
二、串口能帮我们排查哪些 Web 问题
日常协同开发中,遇到以下情况时,串口往往是最快的定位手段:
三、核心概念:半启动与全启动
设备中有一个 appauto 参数控制启动模式,这是整个流程的关键:
全启动(appauto = 1)
set appauto 1
设备上电后系统内核和设备主程序(含 Web 服务) 全部自动启动,是设备的正常工作模式,网页、客户端均可正常访问。
半启动(appauto = 0)
set appauto 0
设备上电后只启动系统,设备主程序(含 Web 服务) 不自动启动,停留在 Shell 命令行状态。
为什么改 IP 要用半启动?
- 设备主程序不启动,不会占用网络资源、不会在修改过程中把配置写回去
- 半启动后可直接进入 Shell 执行网络配置命令
- 改完再恢复全启动,让 设备主程序 以新 IP 干净地初始化
一句话:半启动是"安静地做手术",全启动是"恢复上班"。
四、实战:串口修改设备 IP 完整流程
准备工作
用串口线连接设备和电脑,打开 SecureCRT 建立 Serial 会话即可。
第一步:进入配置页面
设备断电,然后重新上电,在启动前长按 ****** 键,直到进入配置页面。
第二步:关闭 App 自启动(进入半启动)
进入配置页面后,依次执行:
pri
set appauto 0
save
reset
| pri | 进入特权模式 |
| set appauto 0 | 设置下次启动为半启动模式 |
| save | 保存配置到 Flash |
| reset | 重启设备 |
第三步:进入 Shell
设备重启后处于半启动状态,输入:
shell
第四步:身份验证
修改 IP 前需要验证操作人身份,流程如下:
这套机制是安全审计要求,确保每次 IP 修改都可追溯到具体责任人。
第五步:执行修改 IP 命令
验证通过后执行 netinit 命令:
netinit eth0 你的ip 子网掩码 默认网关
参数依次为:网卡名、IP 地址、子网掩码、默认网关。
执行完成后重启设备:
reboot
第六步:恢复全启动
设备重启后,再次断电上电、长按 ****** 键进入配置页面,恢复 App 自启动:
pri
set appauto 1
save
reset
设备再次重启后即正常工作,可通过浏览器访问 http://172.6.103.125 验证修改是否成功。
五、流程图
┌─────────────────────────────────────────────┐
│ 串口线连接设备和电脑,打开 SecureCRT │
└──────────────────┬──────────────────────────┘
▼
断电重启,启动前长按 ****** 键
▼
进入配置页面
▼
pri → set appauto 0 → save → reset
▼
┌──────────────────────┐
│ 设备半启动 │
│ (App 不启动) │
└──────────┬───────────┘
▼
shell 进入命令行
▼
输入工号 → 弹出二维码 → 微信扫码输入密码
▼
输入返回的密码,验证通过
▼
netinit eth0 你的ip 子网掩码 默认网关
▼
reboot
▼
pri → set appauto 1 → save → reset
▼
┌──────────────────────┐
│ 设备全启动 │
│ 网页用新IP访问成功 │
└──────────────────────┘
六、注意事项
七、总结
对于嵌入式项目的 Web 开发者来说,串口调试就像后端开发看服务器日志一样,是协同定位问题的基本功。掌握 SecureCRT 连接、半启动/全启动切换、netinit 修改网络配置这一套流程后,"网页打不开"这类问题就不再只能靠猜,而是可以进设备看日志、查配置、抓包分析,快速定位到底是前端、网络还是设备侧的问题。




