ZHCSXG6B November 2024 – January 2025 DRV81004-Q1
PRODUCTION DATA
图 6-17 显示了 SPI 通信期间 SDI 和 SDO 内容之间的关系。SDI 线路表示从微控制器发送的帧,SDO 线路是 DRV81004-Q1 提供的应答。
SPI 协议仅在微控制器触发下一次传输时提供对命令帧的应答。尽管 DRV81004-Q1 中实现的绝大多数命令和帧都可以进行解码而无需知道之前所发生的情况,但建议考虑微控制器在之前传输中发送的内容,以完全解码 DRV81004-Q1 响应帧。读取和写入寄存器内容的命令序列如下所示:
在 3 种特殊情况下,发送回微控制器的帧与前一个接收的帧不直接相关:
在前一个帧期间发生传输错误(例如,时钟脉冲不是 8 的倍数且至少为 16 位),如下所示。
DRV81004-Q1 逻辑电源退出上电复位条件或在软件复位之后,如下所示。
出现命令语法错误
写入命令从 11b 而非 10b 开始
读取命令从 00b 而非 01b 开始
寄存器上的读取或写入命令未保留或未使用
下面汇总了所有可能的 SPI 命令,包括 DRV81004-Q1 在下一次传输时发送回的应答。
请求的操作 | 发送到 SDI 引脚的帧 | 使用下一条命令从 SDO 引脚接收的帧 |
| 读取标准诊断 | 0xxxxxxxxxxxxx01b(xxxxxxxxxxxxb = 无关) | 0dddddddddddddddb(标准诊断) |
| 写入 8 位寄存器 | 10ppppqqrrrrrrrrb,其中:ppppb = 寄存器地址 ADDR0,qqb = 寄存器地址 ADDR1,rrrrrrrrb = 新寄存器内容 | 0dddddddddddddddb(标准诊断) |
| 读取 8 位寄存器 | 01ppppqqxxxxxx10b,其中:ppppb = 寄存器地址 ADDR0,qqb = 寄存器地址 ADDR1,xxxxxxb = 无关 | 10ppppqqrrrrrrrrb,其中:ppppb = 寄存器地址 ADDR0c,qqb = 寄存器地址 ADDR1,rrrrrrrrb = 寄存器内容 |