ZHCAD74 September 2023 CC3300 , CC3301 , CC3301MOD , CC3351MOD
SPI 標準中定義了四種操作模式。為了成功進行通信,必須以相同的方式配置控制器和外設。這四種模式都是 SPI 時鐘極性和相位的組合。僅支持模式 0,這意味著 SPI 時鐘處于高電平有效狀態,在這種狀態下,數據在時鐘的上升沿被采樣,并在時鐘的下降沿被移出。
為了獲得更好的兼容性和靈活性,在主機接口初始化期間可以配置更多 SPI 參數。
表 3-5 說明了線路上數據的不同選項。
| 格式 | 線路上的數據 | |||
|---|---|---|---|---|
| 無混合的 16 位小端字節序 | B1(b15 至 b8) | B0(b7 至 b0) | B3(b31 至 b24) | B2(b23 至 b16) |
| 帶混合的 16 位小端字節序 | B0(b0 至 b7) | B1(b8 至 b15) | B2(b16 至 b23) | B3(b24 至 b31) |
| 無混合的 16 位大端字節序 | B0(b7 至 b0) | B1(b15 至 b8) | B2(b23 至 b16) | B3(b31 至 b24) |
| 帶混合的 16 位大端字節序 | B1(b8 至 b15) | B0(b0 至 b7) | B3(b24 至 b31) | B2(b16 至 b23) |
| 無混合的 32 位小端字節序 | B3(b31 至 b24) | B2(b23 至 b16) | B1(b15 至 b8) | B0(b7 至 b0) |
| 帶混合的 32 位小端字節序 | B0(b0 至 b7) | B1(b8 至 b15) | B2(b16 至 b23) | B3(b24 至 b31) |
| 無混合的 32 位大端字節序 | B0(b7 至 b0) | B1(b15 至 b8) | B2(b23 至 b16) | B3(b31 至 b24) |
| 帶混合的 32 位大端字節序 | B3(b24 至 b3) | B2(b16 至 b23) | B1(b8 至 b15) | B0(b0 至 b7) |
配置這些特性是在主機接口初始化期間完成的。由于主機接口的硬件線路默認為 SDIO 線路,并且由于 SPI 也使用相同的線路,因此使用 SDIO 命令 CMD0 應用 SPI 特性的初始配置(請參閱 SPI 章節)。
表 3-6 總結了所有可能的配置。
| 特性 | 支持的配置 |
|---|---|
| 時鐘極性 | 在上升沿上對數據進行采樣。對于標準 SPI,數據在下降沿上被移出,對于非標準 SPI,數據在上升沿上被移出 |
| 時鐘相位 | 時鐘在邏輯 0 處空閑 |
| 字大小 | 16 位或 32 位 |
| 主機字節序 | 除電流限制以外的 |
| 位順序 | 可通過位混合進行配置 |
| 芯片選擇極性 | 低電平有效 |
| 主機中斷極性 | 除電流限制以外的 |
| 時鐘頻率 | 標準模式下最高為 26MHz,非標準模式下最高為 52MHz |
| 字之間的芯片選擇置位 | 兩個字之間可能會出現高電平 |
| 自主模式 | 支持 |