在配置 Autosar 协议的 Spi 通道的时候,需要选择SpiDataShiftEdge,有 Leading 和 Trailing 两个选项,在 http://forum.arduino.cc/index.php?topic=177024.0 上找到的相关的解释如下:
个人总结的是 Leading 就是第一个变成初始状态的边沿。
初始状态为高电平,那么 Leading 就是它的第一个上升沿;
初始状态为低电平,那么 Leading 就是它的第一个下降沿。
那么结合 Spi 的极性 Polarity 和相位 Phase ,即 CPOL (Clock Polarity) 和 CPHA(Clock Phase) 关联起来,其中:
CPOL=0 表示时钟空闲时是低电平
CPOL=1 表示时钟空闲时是高电平
CPHA=0 表示第一个边沿
CPHA=1 表示第二个边沿
对比下方EEPROM数据表
它支持两种模式:
CPOL=0,CPHA=0:
初始状态为低,在上升沿采集数据,对应的就是 Trailing 。
CPOL=1,CPHA=1:
初始状态为高,在上升沿采集数据,对应的就是 Leading 。
最后所有配置的总结如下: