## Context

目前项目采用 CH32V30x 微控制器的 DVP (Digital Video Port) 外设，结合 DMA 进行红外图像数据的采集。
为保证后续的图像处理或网络传输顺利进行，必须确认目前的 DVP 和 DMA 的配置是正确的，能够稳定、及时、无损地将红外图像帧搬运到 RAM 区，并正确处理帧中断。

## Goals / Non-Goals

**Goals:**
- 验证 DVP 引脚配置、时序极性和中断设置是否符合所搭配红外传感器输出时序要求。
- 验证 DMA 数据搬运目标地址是否正确分配且对齐，大小是否匹配一帧红外数据。
- 确认 DMA/DVP 中断服务程序（ISR）中能有效判断帧结束和 DMA 传输完成，不发生漏帧或混乱。
- 添加必要的轻量级日志或断点测试方法来确认取到的数据。

**Non-Goals:**
- 不涉及深度的图像识别或处理算法的开发。
- 不涉及改变传感器本身的输出模式配置（除非影响获取数据的基础正确性）。

## Decisions

- **检查代码而不是立即重写**: 首先静态走查相关的配置（如 `dvp.c`, `dvp.h`），与 CH32 参考手册进行比对。
- **内存块分配策略验证**: 确定 DVP DMA 配置的两块（双缓冲或单缓冲）地址机制，确认没有指针越界风险。
- **测试方法**: 在帧结束中断或主循环中计算短时间内获取的有效帧数，并提取部分像素输出串口打印。

## Risks / Trade-offs

- [Risk] 数据量大可能引起总线或者处理迟滞 → 中断处理要足够短小，不能阻塞下一次 DMA。
- [Risk] 直接修改中断服务可能会影响原有稳定的网络栈通信延时 → 在验证阶段避免添加过多阻塞的 printf 等操作。
