27.6.2.5 主时钟发生器(高速模式传输)
为了高速模式传输,这里不用SCL同步,所认SCL频率通过GCLK频率和高速波特率设置确定。当
HSBAUDLOW是零,HSBAUD值用来定时SCL高和SCL低。由于这个原因以下公式能被用来确定SCL频率。
当HSBAUDLOW是非零,以下公式能被用来确定SCL频率:
为了高速通常的高到低速率是1到2并且HSBAUD应设相应的值。在最低限度,BAUD.BAUD和/或
BAUD.BAUDLOW必须是非零值。
27.6.2.6 I2C主机操作
I2C的主机是以面向字节和中断为基础的。产生的中断的数量保持在最低限度的,大多数事件的自动
处理。自动触发操作和一个特殊的智能模式,可以通过向控制寄存器A的Smart模式比特写1来使能
(CTRLA.SMEN),包括减少软件驱动的复杂性及代码大小。
I2C主机有两个中断策略。当SCL Stretch 模式(CTRLA.SCLSM)被设置为0,SCL被延伸在应答比特之前
或者之后。在这个模式下I2C主机操作根据行为而定如下图所示。标有大写字母M并跟有数字的圆圈指示了图
中哪个节点总线逻辑可以跳到,这依据软件或硬件的交互。
此图是用于整个文档的I2C主机操作说明参考。
第二个策略(SCLSM=1),中断只是在ACK位发生如下图所示。这个策略能被用在当在应答之前不需要检
查数据。
注意SCLSM设为1是高速模式需要。
|