ZHCSPR2C December 2021 – August 2022 DRV8243-Q1
PRODUCTION DATA
当多个器件与同一个 MCU 进行通信时,可以采用菊花链配置连接该器件,以节省 GPIO 端口。图 8-13 展示了该拓扑及对应的波形,其中以菊花链形式连接的外设数量“n”设置为 3。以这种方式最多可以连接 63 个器件。
这种情况下,控制器发送的 SDI 将采用以下格式(请参阅 图 8-13 中的 SDI1):
当数据通过链传送时,控制器会通过以下格式接收数据(请参阅 图 8-13 中的 SDO3):
标头字节是在菊花链 SPI 通信开始时置位的特殊字节。对于这两个前导位,标头字节必须以 1 和 0 开头。
第一个标头字节 (HDR1) 包含菊花链中外设总数的信息。N5 至 N0 是6位,专用于显示菊花链中器件的数量,如图 8-14 所示。每个菊花链最多可串行连接 63 个器件。不允许外设数量 = 0,且这会导致出现 SPI_ERR 标志。
第二个标头字节 (HDR2) 包含全局 故障清除 命令,该命令将清除芯片选择 (nSCS) 信号上升沿上所有器件的故障寄存器。HDR2 寄存器的 5 个后置位标记为 SPARE(无关紧要位)。MCU 可以使用这些位来确定菊花链连接的完整性。
此外,该器件将以两个前导位为 1 和 1 开头的字节识别为“传递”字节。该器件不会处理这些“通过”字节,这些字节只会在 SDO 上按以下字节发送出去。
当数据通过器件时,它通过计算接收到的状态字节数(后跟第一个标头字节)来确定自身在链中的位置。例如,在这种三器件配置中,菊花链中的器件 2 会先接收两个状态字节,然后再接收两个标头字节。
根据两个状态字节,器件可以确定其位于链中的第二个位置,而通过 HDR2 字节,器件可以确定链中连接的器件数量。这样,器件只加载缓冲区中的相关地址和数据字节,并绕过其他位。该协议可实现更快的通信,而不会因为链中连接多达 63 个器件而增加系统延迟。
命令、数据、状态和报告字节保持不变,如标准帧格式所述。