问题描述
零一科技最新固件,摄像头硬件能正常采集:程序成功识别 GC2093;单独拍照保存的 640×480 JPEG 也能正常显示、不是白图。
但是通过运行多个官方例程以及直接通过c口连接电脑打开IDE,都无法正常展示画面,运行的例程包括2-1(机器视觉-摄像头)、2-2-1(机器视觉-屏幕显示-IDE显示)、2-2-3(机器视觉-屏幕显示-MIPI屏幕)。
IDE尝试过原生版本和vscode插件版本。
已经让gpt5.6尝试修复无果了,尝试过的修复方向包括:
确认板子为 01Studio K230 1G,摄像头为 GC2093 CSI2,固件为官方最新版 v1.8。
排查 COM5 端口占用,关闭重复的 VS Code 窗口、CanMV 后端和 MCP 会话。
修改 camera.py 为 640×480 RGB565,加入资源释放、帧率统计,并将 IDE JPEG 质量降到 50。
连续运行摄像头采集,程序处理了 1300 多帧,约 87 FPS,没有采集错误。
单独拍摄并保存了一张 640×480 JPEG,下载检查后确认图像有效且不是白图。
用不含摄像头的纯合成画面反复调用 Display.show_image(),确认显示循环本身能持续运行。
分别使用 VS Code 扩展和 CanMV MCP 测试预览。
VS Code 只收到第 1 帧,约 4 秒后预览看门狗开始反复停止、重启预览。
检查扩展日志,发现反复重启后出现 short read,预览协议从 v2 失步成 v0。
排查过设备文件树的 io.listDir 并发读取,但干净测试中即使没有它,白屏仍然存在。
测试了 quality=50、移除手工帧率限制、移除循环中的 os.exitpoint(),问题仍未解决。
检查了 CanMV 扩展源码,定位了电脑端预览看门狗及 MCP 可能重复发送 startPreview 的逻辑。
核对了官方固件下载页、扩展版本和发布时间。
复现步骤
烧录最新镜像后直连电脑ide即可浮现
硬件板卡
01科技
软件版本
CanMV_K230_01Studio_micropython_v1.8-0-gc2d1f5c_nncase_v2.11.0.img