模拟与调试

PXA 创作与开发指南

PXADB 图形化调试

使用实时预览、遥控、文件浏览和包管理完成日常调试。

中文指南 · 3 分钟阅读 · PXA 0.10.0
适用环境与阅读准备

适用环境可选桌面工具

开始前源码工作区、Python 3.11+、PySide6;GUI 不在 DevKit 内

术语速查 →

GUI 是固件工作区的可选工具,不包含在独立 DevKit 0.9.0 中。需要源码工作区、Python 3.11+ 和 PySide6。先获取工作区。

启动 GUI

tools/pxadb-gui.sh
tools/pxadb-gui.sh --port /dev/ttyACM0
tools/pxadb-gui.sh --simulator pai-touch

在工作区根目录执行。Ubuntu 若缺少 venv,可先安装 python3-venv。GUI 基于 PySide6,与 CLI 共享同一个 pxadb 客户端。首次启动需要准备相应 Python 依赖。也可以在虚拟环境独立安装:

python3 -m venv .pxa-gui-venv
.pxa-gui-venv/bin/python -m pip install -e tools/pxadb -e tools/pxadb-gui
.pxa-gui-venv/bin/pxadb-gui

界面速览

PXADB GUI 已连接模拟器,左侧实时预览,右侧应用列表,下方设备日志

PXADB GUI 连接本地 pai-touch@docs 实例的实际界面。左侧显示 296×240 屏幕帧,右侧为 Packages 面板;这不是 USB 真机截图。 点击图片查看原图。

  • 顶部设备选择器:选择端点,连接后勾选 Live preview 开始连续取帧。
  • 左侧屏幕:查看画面,点击或拖动可转发触控;下方提供 Back / Home 等按键。
  • 右侧 Packages:刷新列表、安装 .pxa、运行和停止应用;Files 用于文件浏览。
  • 下方 Device log:勾选订阅日志后查看设备输出;截图中没有开启日志订阅。
  • Screenshot / Save frame:读取截图或保存预览帧;列表中的 unknown 表示当前目录没有提供版本值,不能据此判断包版本。

DevKit 的 debug 模式按项目隔离实例,连接时选择 pxa run --debug 打印的完整名称,见命令行教程。

一次完整调试

  1. 在设备选择器中选择 USB 设备或运行中的模拟器,核对端口与波特率。
  2. 打开实时预览,点击或拖动预览画面,把输入送到设备。
  3. 在日志面板查看启动、渲染与 Guest 输出。
  4. 在 Package 面板安装本地 .pxa,再启动应用。
  5. 使用文件面板浏览或传输测试资源,保存必要日志和截图。

预览性能

预览是截图传输,不是设备显示帧率。历史测量中,USB 296×240 JPEG 预览通常约 3–4 FPS;产品模拟器约 15–20 FPS;高分辨率 UART 设备可能明显更慢。实际速度取决于分辨率、编码、波特率和固件限频。

拖动时 GUI 会暂停截图采集以保持输入响应。连接重启后会尝试按设备序列号重新寻找端点,端口变化不一定需要重开 GUI。

独占串口

GUI、pxadb logcat、tools/dev.sh device 与 IDF monitor 不应同时打开同一端口。切换工具前先断开当前连接;排查超时先处理端口争用,再检查协议或波特率。

参考实现与资料pxadb-gui/README.md ↗

输入关键词,搜索全部教程。