華大電子MCU-CIU32F011x3同步串行接口
- 公司名稱 沈陽芯碩科技有限公司
- 品牌 其他品牌
- 型號
- 產地
- 廠商性質 經銷商
- 更新時間 2023/1/18 10:10:35
- 訪問次數 196
聯系我們時請說明是化工儀器網上看到的信息,謝謝!
供貨周期 | 現貨 | 應用領域 | 電子 |
---|
12. 同步串行接口(SSP)
12.1. 模塊介紹
SPI_IIC 模塊可用作 SPI 接口通信和 IIC 接口通信,兩種功能同一時間只能選擇其中一種使用。該模塊集成兩種接口協議,節省資源的同時又能滿足不同的應用需求。
12.2. 功能特點
12.2.1. SPI 功能
• 支持主模式和從模式工作
• 可編程時鐘極性,采樣相位,支持 4 種模式
• 支持 1~32bit 傳輸
• 支持 5byte 發送/接收數據緩沖
• 傳輸數據順序 MSB 和 LSB
• 支持標準模式,三線模式
• 可觸發中斷的專用發送和接收標志
12.2.2. IIC 功能
• 支持主模式和從模式
• 主模式支持時鐘同步和總線仲裁
• 從模式支持在發送數據沒有準備好或者接收緩沖器滿時候拉低 SCL
• 從模式支持 7bit 地址或者 10bit 地址
• 從模式支持接收廣播地址
• 支持 5byte 發送/接收數據緩沖
12.3. 功能說明
12.3.1. SPI 工作模式
• 模式 0:時鐘空閑為 0,上升沿采樣,下降沿出數據
• 模式 1:時鐘空閑為 0,下降沿采樣,上升沿出數據
• 模式 2:時鐘空閑為 1,下降沿采樣,上升沿出數據
• 模式 3:時鐘空閑為 1,上升沿采樣,下降沿出數據
12.3.2. SPI 接口模式
• 標準模式:通信線有 CLK,CS,IO0(MOSI),IO1(MISO),一個 CLK 傳輸 1bit 數據
• 三線模式:通信線有 CLK,CS,IO0,接收和發送都通過 IO0, 一個 CLK 傳輸 1bit 數據
12.3.3. SPI 數據幀與內部緩存
SPI 可支持 1~32bit 幀數據傳輸,內部集成了一個 40bit 的緩沖區,根據配置的數據幀長度不同,緩沖區能緩存的幀數也不一樣。數據幀長度<=8bit 時,緩沖區可容納 5 幀數據,8bit<數據幀長度<=16bit時,緩沖區可容納兩幀數據,數據幀長度>16bit 時,緩沖區可容納 1 幀數據,當緩沖區無法再容下一幀數據時,緩沖區滿標志會置 1。
12.3.4. IIC 主機時鐘同步和總線仲裁
IIC 主機模式時,在多主機的應用場景下,支持時鐘同步和總線仲裁。當總線上連接了不止一個主機時,就會存在同時發起通信的情況,這時候需要時鐘同步以及總線仲裁機制決定由哪個主機占用總線完成數據傳輸。
時鐘同步的原理:IIC 總線上的不同主機可能發起傳輸時的時鐘頻率不一樣,通過時鐘同步機制,可以讓所有主機的時鐘同步,才能進行逐位仲裁。所有主機的 SCL 在總線上是線與的關系,當總線上的 SCL 由高切換到低電平時,所有主機從 0 開始計算低電平周期時間。當電平時間達到時,如果總線上的其它主機的 SCL 低電平仍然保持,那么其它主機進入高電平等待狀態,等低電平時間最長的主機的 SCL 拉高時再統一拉高。因此,總線上同步后的 SCL 的低電平時間由低電平周期最長的主機決定,而高電平時間由高電平周期最短的主機決定。總線仲裁原理:IIC 總線上不同主機的 SDA 線也是線與的關系,各主機在 SCL 線為高電平時,檢查SDA 線的電平是否和自己發送的 SDA 信號一致,如果檢測到 SDA 線為低電平時,自己要發送的 SDA 信號為高電平,那么該主機仲裁失敗,停止總線上的傳輸動作。
12.3.5. IIC 從機拉低 SCL
IIC 從機在發送狀態下如果緩沖區中沒有可發送的數據,或者在接收狀態下緩沖區已滿時,將會在 SCL端口輸出低電平,拉低總線上的 SCL 信號使主機暫停發送時鐘。當從機準備好發送或者接收后,將在 SCL輸出高電平,主機又可以重新控制總線上的 SCL 線,恢復數據傳輸。
12.3.6. IIC 從機支持 7bit/10bit 尋址
IIC 從機支持 7bit 或者 10bit 尋址模式,由寄存器 CON0 的 IIC_SLAVE_ADDR_WIDTH 位決定。7bit 模式下,主機需要在 TX 模式下發送帶 START 位的 7bit 地址,最后 1bit 為 R/W 標志。當主機寫從機時,尋址完成即可進行數據發送。當主機讀從機時,尋址完成后,主機需要改成 RX 模式,然后配置準備接收的數據長度(寄存器 DMA_LEN),然后對寄存器 CMD_DATA 寫任意值啟動接收。10bit 模式下,主機需要在 TX 模式下發送帶 START 位的第 1byte 地址(此時 R/W 位為 1),接著發送第 2byte 地址,此時如果收到從機的 ACK 信號,則為尋址成功。接下來如果是主機寫從機,就可以直接進行數據發送。如果是主機讀從機,那么需要主機再次發送帶 START 為的第 1byte 地址(此時 R/W 為 1),然后切換成 RX 模式,配置寄存器 DMA_LEN,并且對寄存器 CMD_DATA 寫任意值啟動讀數據。
主機讀從機時,從機被尋址成功且收到讀標志時,需要切換成 TX 模式,并且往緩沖區中寫入要發送的數據。
沈陽芯碩科技有限公司是華大電子專業代理商,有技術問題可咨詢芯虎論壇