zhoujie 82d672a2d3 📝 docs(openspec): 新增 DVP-DMA-IR 检查的文档和规范
- 在 openspec/changes/archive/ 下新增 2026-03-13-check-dvp-dma-ir 归档目录
- 新增设计文档 (design.md),包含背景、目标、决策和风险评估
- 新增提案文档 (proposal.md),说明变更原因、内容和影响
- 新增功能规范 (spec.md),定义 DVP 配置验证、DMA 内存传输正确性和诊断输出要求
- 新增任务清单 (tasks.md),列出代码审查、中断处理和诊断验证的具体步骤
- 更新 openspec/config.yaml,添加上下文注释
- 在 openspec/specs/ 下新增 dvp-dma-ir-capture 功能规范

🐛 fix(dvp): 修复 DVP 任务中的竞态条件并增强调试输出

- 在 DVP_Task() 中访问 Line_Ready_Flag 和 Ready_Line_Ptr 前禁用 DVP 中断,操作后重新启用,防止数据竞争
- 增强第0行的调试打印,每秒计算并输出帧率 (fps)
- 新增打印第0行前8个字节的原始数据,用于验证数据有效性
- 使用外部定义的 sys_tick_ms 进行时间计算,确保时间基准一致
2026-03-13 23:25:48 +08:00

23 lines
1.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## ADDED Requirements
### Requirement: DVP configuration verification
系统必须具备按预期传感器时序要求正确初始化的外设 DVP并在捕捉时确保引脚映射和控制极性符合期望。
#### Scenario: DVP Peripheral correctly starts capture
- **WHEN** 系统启动且开启红外捕捉模式
- **THEN** DVP 能够捕捉到有效场同步和行同步信号并进行同步
### Requirement: DMA memory transport correctness
DMA 通道必须绑定至 DVP 数据寄存器,并以与图像帧空间匹配(甚至双缓冲)的配置分配目的内存区域,地址不得非法越界。
#### Scenario: Frame mapped successfully to RAM buffer
- **WHEN** DVP 传输满一整帧
- **THEN** DMA 完整将其写入指定的 RAM buffer 并生成 DMA 满完成中断。
### Requirement: Diagnostic outputs for infrared data validation
应当包含不阻塞中断流的轻微日志来输出当前捕捉到的前 N 个像素或帧计数,以在运行时供检查验证。
#### Scenario: User checks IR camera status from terminal
- **WHEN** 持续采集数据
- **THEN** 主循环能够根据完成标志打印当前帧率及简易采集信息进行调试。