天天看點

ATSHA204A(五)——喚醒,休眠1. 資料包2.喚醒3.休眠

1. 資料包

在 I2C 寫資料包期間,ATSHA204A 會将發送的第二個位元組解釋為字位址,表示資料包功能,如下表所述。

ATSHA204A(五)——喚醒,休眠1. 資料包2.喚醒3.休眠

2.喚醒

當器件喚醒時,它将遵循下列條件:

  • 0:如果 SDA 為低電平且保持穩定,而 SCL 由低電平變為高電平再變為低電平,則将在總線上傳輸一個 0 位。當 SCL 為低電平時,SDA 可發生變化。
  • 1:如果 SDA 為高電平且保持穩定,而 SCL 由低電平變為高電平再變為低電平,則将在總線上傳輸一個 1 位。當 SCL 為低電平時,SDA 可發生變化。

I2C總線上資料位傳輸:

ATSHA204A(五)——喚醒,休眠1. 資料包2.喚醒3.休眠
  • :必須将 SDA 從高電平轉換為低電平且 SCL 為高電平作為優先于所有指令的啟動條件。
  • :SDA 線從低電平轉換為高電平且 SCL 為高電平為停止條件。器件收到此條件後,目前的I/O 事務結束。在輸入端,如果器件有足夠的位元組來執行指令,則器件轉換到繁忙狀态并開始執行。

I2C總線的啟動停止條件:

ATSHA204A(五)——喚醒,休眠1. 資料包2.喚醒3.休眠

喚醒到資料傳輸之間的延時: 

ATSHA204A(五)——喚醒,休眠1. 資料包2.喚醒3.休眠
ATSHA204A(五)——喚醒,休眠1. 資料包2.喚醒3.休眠

3.休眠

當器件休眠時,它将忽略除喚醒狀态以外的所有狀态。

如果 SDA 保持低電平的時間超過 tWLO,此器件将退出低功耗模式,并且在 tWHI 的延時後,它将準備好接收 I2C 指令。當器件空閑或休眠時,在 tWLO 期間,器件将忽略 SCL 引腳上的任何電平或轉換。在 tWHI 期間的某個時刻,将使能 SCL 引腳,并且将遵循 一節中列出的條件。

喚醒條件要求系統處理器手動将 SDA 引腳驅動為低電平并持續 tWLO,或者以足夠低的時鐘速率傳輸 0x00資料位元組以使 SDA 的低電平時間持續最短周期 tWLO。當器件喚醒時,正常的處理器 I2C 硬體和/或軟體可用于器件通信,直至包括所需的 I/O 序列,進而使器件回到低功耗(例如休眠)模式。

當總線上有多個 ATSHA204A 器件時,I2C 接口運作在 133KHz 或更低頻率下,傳輸某些資料類型(例如0x00)将導緻總線上的所有 ATSHA204A 器件喚醒。由于沿總線傳輸的後續器件位址将隻比對所需的器件,是以未使用的器件将保持無效,不會引起任何總線沖突。

繼續閱讀