Edit online

调试指南

5 Dec 2024
Read time: 1 minute(s)

调试开关

Luban-Lite 中,MDI 驱动的 Log 控制接口共用了全局的 ulog 接口。

ulog 打印级别的控制方法,可以参考调试 Log 的级别。

在 mpp_vin_dev.c 中,预留了两个调试用的宏:
#define VIN_DEBUG_SHOW_FRAMERATE
#define VIN_DEBUG_DISP_ENABLE
#define VIN_DEBUG_PART_REFRESH
#define VIN_DEBUG_GEN_CMD
// #define VIN_DEBUG_VERBOSE_LOG
这些宏的功能分别是:
注: 注释掉宏可关闭相应功能,可以看到最后一个调试开关的默认状态是关闭。
  1. VIN_DEBUG_SHOW_FRAMERATE: 是否统计帧率的数据并定时打印显示

  2. VIN_DEBUG_DISP_ENABLE: 启用 DE 将数据显示到屏幕

  3. VIN_DEBUG_PART_REFRESH: 启用 局部刷新 功能的支持

  4. VIN_DEBUG_GEN_CMD: 模拟一组 DBI CMD 来完成初始化的参数配置,即不依赖发送端的初始化命令

  5. VIN_DEBUG_VERBOSE_LOG: 显示更多 log 信息,主要是打开传输过程中的 0x2A、0x2B 命令信息

驱动加载状态

MDI 的设备初始化入口,是放在 MPP VIN Dev 的初始化中调用完成的。

在 RT-Thread 中,MDI 暂时没有注册为一个设备,只是提供了一些 API 接口,所以从命令 list_device 中是看不到 MDI 设备的。