ZHCU813A April   2021  – February 2022 DLPC6540

 

  1.   商标
  2. 范围
  3. 参考文献
  4. 首字母缩写词
  5. 系统引导
    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 低级故障
  6. 系统状态
  7. 版本
  8. 功耗模式
  9. 显示模式
  10. 源检测和配置
  11. 10内部源
    1. 10.1 测试图形 (TPG)
    2. 10.2 纯色域 (SFG) 颜色
    3. 10.3 幕布
  12. 11显示格式
  13. 12图像处理
  14. 13照明控制
  15. 14外设
    1. 14.1 GPIO
  16. 15接口协议
    1. 15.1 支持的接口
    2. 15.2 I2C 目标
    3. 15.3 USB
  17. 16命令协议
    1. 16.1 命令数据包
    2. 16.2 响应数据包
    3. 16.3 目标详细信息
    4. 16.4 错误处理和恢复
    5. 16.5 系统繁忙 - I2C 场景
      1. 16.5.1 GPIO 实现
      2. 16.5.2 短缺状态响应
    6. 16.6 支持可变数据大小
  18. 17自动初始化批处理文件
  19. 18命令说明
  20. 19系统命令
    1. 19.1  3D
    2. 19.2  管理事务
    3. 19.3  自动锁定
    4. 19.4  引导加载程序
    5. 19.5  校准
    6. 19.6  内部调试
    7. 19.7  调试
    8. 19.8  常规运行
    9. 19.9  照明
    10. 19.10 图像处理
    11. 19.11 外设
    12. 19.12 扭曲
    13. 19.13 手动 WPC
  21.   修订历史记录

响应数据包

响应数据包是 DLP 控制器应答主机的格式。写入响应和读取响应都遵循响应数据包格式。对于写入命令,只有在命令标头中设置了“已请求应答”位时才会发送响应数据包。

DLP 控制器将响应标头匹配为与传入命令数据包标头相同的格式。但有一个例外:如果响应数据包用于需要可变数据字节数的命令,则响应数据包将始终包含长度字段(无论命令数据包是否提及长度)。另请参阅有关可变大小命令的Topic Link Label16.6部分。

与命令数据包的定义类似,粗体字段表示始终存在的字段。

表 16-3 响应数据包格式
字段 大小(字节) 说明
Header(标头) 1 请参阅下面的表 16-4
Length(长度) 2 或 0(可选,根据标头中的“数据长度存在”字段而定) 此字节之后的命令数据长度(以字节为单位)。校验和不包含在长度中。
例如 length=10 表示在这个长度字段之后有 10 个字节的数据。应先发送长度 LSB,然后是 MSB。
Data(数据) 0-511(整个消息中包括标头和校验和在内最多 512 个字节)

响应数据字节取决于命令代码。

如果设置了标头中的错误位,则将只有一个数据字节。此字节将指示导致命令无应答的错误代码。表 16-5 列出了错误代码定义。

Checksum(校验和)

1 或 0

(可选,根据标头字节的“校验和存在”字段而定)

消息中所有字节的校验和(包括标头字节)。Fletcher 校验和。
表 16-4 响应标头字节
字段名称
0:2 Destination(目标) 请参阅 Topic Link Label16.3
3 Reserved(保留) 不适用
4 Datalength Present(数据长度存在) 1 = 扩展标头中存在长度字段
0 = 无长度字段
5 Checksum Present(校验和存在) 1 = 数据字节后存在校验和
0 = 不存在校验和
6 Error(错误) 1 = 错误。第一个数据字节将包含错误代码,此代码可提供有关失败的更多信息
0 = 无错误
7 Busy(繁忙) 1=系统繁忙/响应未准备就绪;0=响应准备就绪。仅适用于基于 I2C 的通信
表 16-5 错误代码定义
错误代码 含义
1 无效目标
2 无效/未知命令
3 无效长度
4 分配的缓冲区不足以存储命令
5 大小可变的命令缺少长度信息
6 校验和不匹配
7 控制器不兼容,无法运行应用程序
8 不支持读取
9 不支持写入
10 执行失败
11 无效的响应长度
12 缓冲区已满

如上面的命令标头说明中所述,写入响应是可选项。如果请求了响应,则必须在相应的命令数据包之后立即读取响应(包括写入响应和读取响应)。一旦 DLP 控制器从主机接收到另一组字节,命令的响应就会丢失。