ZHCU955C August   2021  – March 2024 DLPC7540

 

  1.   1
  2.   摘要
  3.   商标
  4. 范围
  5. 参考资料
  6. 首字母缩写词
  7. 系统引导
    1. 4.1 闪存中的数据
    2. 4.2 引导加载程序
    3. 4.3 主应用程序
    4. 4.4 引导加载程序和主应用程序支持的命令
    5. 4.5 调试终端
    6. 4.6 HOST_IRQ/SYSTEM_BUSY
    7. 4.7 心跳
    8. 4.8 低电平故障
  8. 系统状态
  9. 版本
  10. 功耗模式
  11. 显示模式
  12. 源检测和配置
  13. 10内部源
    1. 10.1 测试图形 (TPG)
    2. 10.2 纯色域 (SFG) 颜色
    3. 10.3 幕布
  14. 11显示格式
  15. 12图像处理
  16. 13变形
    1. 13.1 控制点表
    2. 13.2 手动变形表
    3. 13.3 表约束
    4. 13.4 示例变形表
    5. 13.5 手动变形命令
      1. 13.5.1 CMD_SetManualWarpControlPoints [命令 ID:0x35,目标:4]
      2. 13.5.2 CMD_GetManualWarpControlPoints [命令 ID:0x35,目标:4]
      3. 13.5.3 CMD_WriteManualWarpTable [操作码:0x34,目标:4]
      4. 13.5.4 CMD_ReadManualWarpTable [操作码:0x34,目标:4]
      5. 13.5.5 CMD_ConfigureSmoothWarp [命令 ID:0x38,目标:4]
      6. 13.5.6 CMD_ApplyManualWarping [命令 ID:0x36,目标:4]
    6. 13.6 光学(镜头)失真校正
  17. 14混合简介
    1. 14.1  混合映射控制点
    2. 14.2  混合映射增益值
    3. 14.3  混合映射偏移值
    4. 14.4  约束条件
    5. 14.5  手动混合命令
      1. 14.5.1 CMD_EnableEdgeBlending [命令 ID:0x2F]
      2. 14.5.2 CMD_SetBlendMapControlPoints [操作码:0x2E]
      3. 14.5.3 CMD_ GetBlendMapControlPoints [命令 ID: 0x2E]
      4. 14.5.4 CMD_SetBlendMapGainValues [命令 ID:0x2B]
      5. 14.5.5 CMD_ GetBlendMapGainValues [命令 ID:0x2B]
      6. 14.5.6 CMD_ SetBlendMapOffsetValues [命令 ID:0x2D]
      7. 14.5.7 CMD_ GetBlendMapOffsetValues [命令 ID:0x2D]
      8. 14.5.8 CMD_ApplyBlendMap [命令 ID:0x2C]
    6. 14.6  手动混合应用命令
      1. 14.6.1 CMD_SetEdgeBlendingSystemParams [命令 ID:0x3D]
      2. 14.6.2 CMD_GetEdgeBlendingSystemParams [命令 ID:0x3D]
      3. 14.6.3 CMD_SetEdgeBlendingConfiguration [命令 ID:0x3E]
      4. 14.6.4 CMD_GetEdgeBlendingConfiguration [命令 ID:0x3E]
    7. 14.7  为混合设置裁剪输入图像
    8. 14.8  在 EEPROM 中存储边缘混合配置
    9. 14.9  存储在 EEPROM 或辅助闪存中
    10. 14.10 控制程序中的手动混合 GUI
  18. 15照明控制
  19. 16外设
    1. 16.1 GPIO
    2. 16.2 PWM
  20. 17接口协议
    1. 17.1 支持的接口
    2. 17.2 I2C 目标
    3. 17.3 USB
  21. 18命令协议
    1. 18.1 命令数据包
    2. 18.2 响应数据包
    3. 18.3 目标详细信息
    4. 18.4 错误处理和恢复
    5. 18.5 系统繁忙 - I2C 场景
      1. 18.5.1 GPIO 实施
      2. 18.5.2 短缺状态响应
    6. 18.6 支持可变数据大小
  22. 19自动初始化批处理文件
  23. 20命令说明
  24. 21系统命令
    1. 21.1  3D
    2. 21.2  管理事务
    3. 21.3  自动锁定
    4. 21.4  引导加载程序
    5. 21.5  校准
    6. 21.6  混合
    7. 21.7  调试内部
    8. 21.8  调试
    9. 21.9  常规运行
    10. 21.10 照明
    11. 21.11 图像处理
    12. 21.12 手动 WPC
    13. 21.13 外设
    14. 21.14 视觉
    15. 21.15 变形
  25.   修订历史记录

变形

变形

表 21-148 手动变形表 [操作码:34h | 目标:4]
设置手动变形表
写入参数
字节 说明
字节 0-1

待写入数据的表内起始索引

字节 2 - *

以 X、Y 对表示的变形映射点,其中 X、Y 采用 13.3 定点格式

此命令用于写入可使用应用手动变形命令启用的变形映射表。N 个变形映射点可以一次性加载到表内的任何位置。使用此命令可设置的最大点数为水平方向 62 点和垂直方向 32 点。总共最多 1984 点。此命令设置的点数应与使用设置手动变形控制点命令指定的控制点数相匹配。

每个点会作为两个 13.3 固定点数(表示 X 和 Y 坐标)来传递。由于命令数据包总大小不能超过 512 字节,加载该表时应使用不同的起始索引多次调用命令。

获取手动变形表
读取参数
字节 说明
字节 0-1

要从中读取数据的表内起始索引

字节 2-3

待读取的条目数

返回参数
字节 说明
字节 0 - *

以 X、Y 对表示的变形映射点,其中 X、Y 采用 13.3 定点格式

此命令用于从已使用设置手动变形表加载的变形映射表中读取。可以从表内的任何位置一次性读取 N 个变形映射点(不超过命令数据包大小)。最大表大小为 1952。

表 21-149 手动变形控制点 [操作码:35h | 目标:4]
设置手动变形控制点
写入参数
字节 说明
字节 0

指示变形控制点是否由水平和垂直控制点数组显式定义。

0 = 输入图像被均匀划分以创建维度为 ((水平控制点数) x (垂直控制点数)) 的变形控制点。将使用设置手动变形命令加载的变形映射表用作维度为 (变形列 x 变形行) 的两维阵列。

1 = 变形控制点由此命令的 Horizontal Control Points 和 Vertical Control Points 参数定义。将使用设置手动变形表命令加载的变形映射表用作维度为 (62 x 32) 的两维阵列。

字节 1 - *

如果控制点由数组 = 0 定义,则此处发送水平控制点的数量。

如果控制点由数组 = 1 定义,则此处发送 uint16 格式的 62 个水平控制点

字节 1 - *

如果控制点由数组 = 0 定义,则此处发送垂直控制点的数量。

如果控制点由数组 = 1 定义,则此处发送 uint16 格式的 32 个垂直控制点。

此命令用于设置用户定义的变形映射控制点,如果启用,这些控制点将用于设置梯形校正、变形缩放和其他变形相关功能。将手动变形表写入命令加载的变形映射表用作二维阵列,其维度由此命令的第一个参数定义:

TRUE = (水平控制点数) x (垂直控制点数)

FALSE = (62 x 32) 映射中的点应当位于由显示图像尺寸命令定义的显示区域内。任何位于显示区域外的点都将被裁剪掉。

获取手动变形控制点
返回参数
字节 说明
字节 0

指示变形控制点是否由水平和垂直控制点数组

显式定义。

字节 1 - *

如果控制点由数组 = 0 定义,此处会返回水平控制点的数量和垂直控制点的数量。

如果控制点由数组 = 1 定义,此处会返回 Actual(62) 水平控制点和 Actual(32) 垂直控制点。

此命令用于获取用户定义的变形映射控制点。

表 21-150 应用手动变形 [操作码:36h | 目标:4]
设置应用手动变形
写入参数
字节 说明
字节 0

启用

位 0:启用变形

此命令用于将手动变形控制点和映射表应用于分别由设置手动变形控制点和设置手动变形表定义的变形硬件。

获取应用手动变形
返回参数
字节 说明
字节 0

启用

bit0:启用手动变形

bit1:启用表面校正变形

bit2:启用透镜校正变形

此命令返回在各种用例中变形功能是否已启用或禁用。

表 21-151 平滑变形表 [操作码:38h | 目标:4]
设置平滑变形表
写入参数
字节 说明
字节 0

平滑变形表的列数在下方指定(范围 3-5)

字节 1

平滑变形表的行数在下方指定(范围 3-5)

字节 2 - *

以 X、Y 对表示的变形映射点,其中 X、Y 采用 13.3 定点格式

此命令用于设置用户定义的 MxN 变形映射以创建参数化平滑曲线。在本例中,连接两个变形点的边缘不是直线,而是“更加平滑”,即在变形点边缘是连续的,不会形成顶点(角除外)。方法是拟合二次多项式曲线以将点变形,与通过拟合直线将点变形的“写入手动变形表”命令相反。

获取平滑变形表
返回的数据与上述写入参数的格式相同。

此命令可返回用户定义的 MxN 变形映射点

表 21-152 手动变形表更新模式 [操作码:39h | 目标:4]
设置手动变形表更新模式
写入参数
字节 说明
字节 0

0 = 覆盖现有

1 = 与现有合并

此命令用于配置变形引擎的变形点更新模式。只有一个手动变形可以应用于变形引擎。因此,如果需要多个手动变形映射,它们应在应用前合并。

此命令用于启用或禁用合并模式中的“手动变形合并模式”,写入的任何新映射将与现有手动变形映射合并。映射可以逐个合并。对于每个映射,需要使用“设置手动变形控制点”命令设置控制点,应使用“写入手动变形”命令写入变形点。

获取手动变形表更新模式
返回的数据与上述写入参数的格式相同。

此命令返回设置变形表写入模式

表 21-153 未校正的点云 [操作码:ACh | 目标:4]
获取未校正的点云
读取参数
字节 说明
字节 0-1

数据检索的起始索引

字节 2-3

待返回的条目数

返回参数
字节 说明
字节 0 - *

未校正的点云数据

范围 = -32768 至 32767,步长为 1

获得预处理的 3D 点云坐标,从索引开始,在返回 NumEntries 后结束

表 21-154 已校正的点云 [操作码:ADh | 目标:4]
获取已校正的点云
读取参数
字节 说明
字节 0-1

数据检索的起始索引

字节 2-3

待返回的条目数

返回参数
字节 说明
字节 0 - *

已校正的点云数据

范围 = -32768 至 32767,步长为 1

获得后处理的 3D 点云坐标,从索引开始,在返回 NumEntries 后结束

表 21-155 质心 [操作码:AEh | 目标:4]
获取质心
读取参数
字节 说明
字节 0-1

数据检索的起始索引

字节 2-3

待返回的条目数

返回参数
字节 说明
字节 0 - *

未校正的摄像机点数据

范围 = -32768 至 32767,步长为 1

获取 2D 质心数组,从索引开始,并在检索 NumEntries 后结束

表 21-156 表面变形映射 [操作码:AFh | 目标:4]
获取表面变形映射
读取参数
字节 说明
字节 0-1

数据检索的起始索引

字节 2-3

待返回的条目数

返回参数
字节 说明
字节 0 - *

表面变形映射数据

范围 = -32768 至 32767,步长为 1

获取重新分配的 2D 表面变形映射数据

表 21-157 点云尺寸 [操作码:B0h | 目标:4]
获取点云尺寸
返回参数
字节 说明
字节 0-1

点云的水平分辨率

字节 2-3

点云的垂直分辨率

检索点云的尺寸,最小 8x8,最大 62x32