本文將逐步介紹MR2 SSI編碼器模組,如(圖1)所示,其內容涵蓋Master(控制器)與Slave(編碼器模組)之間的傳輸機制,以及其模組欲傳遞的編碼器資訊。
(圖1) SSI編碼器模組之實體
首先從Synchronous Serial Interface(SSI)之信號腳位介紹,主要仰賴兩組信號,分別為Clock與Data,由Master輸出Clock信號,而當Slave接收到Clock信號後,將逐Bit資料輸出至Data,如(圖2)所示,請注意本模組Clock與Data信號為Differential signaling(差分信號)傳輸。
(圖2) 模組接線示意圖
我們將從SSI Timing diagram進行分析,而為了方便解釋,筆者將傳輸過程分成三種狀態,分別是Idle、Transfer與Done等狀態,如(圖3)所示,如此一來將方便讀者了解各狀態下,Master與Slave是如何運作。
(圖3) 三種狀態之介紹
首先介紹Idle狀態,Master與Slave在未進行任何傳輸的情況下,應將Clock與Data信號維持High,而在Master欲發送Clock第一個Falling edge前,應檢查Data是否為High一段時間,目的是確保Slave上一次的通信傳輸已經結束。
(圖4) Idle狀態
緊接著介紹Transfer狀態,此狀態下Master將會輸出Clock信號(不斷切換High、Low),與此同時Slave將會偵測Clock的Rising edge與Falling edge,於Rising edge時,輸出1Bit資料至Data信號,而於Falling edge時,準備下一個欲發送的Bit資料,反覆動作直到傳輸完畢。透過了解Slave的發送時機,我們可以知道Master應於Clock之Falling edge時,從Data信號取出1Bit資料。
(圖5) Transfer狀態
最後介紹Done狀態,此狀態下Master已經取完所有Bit資料,將使Clock輸出High一段時間(Tp)才可進行下一次傳輸,而Slave則在輸出最後1Bit資料後,使Data信號維持輸出Low一段時間(Tm),直到時間結束後,才會將Data信號輸出High。
(圖6) Done狀態
透過前文的介紹,我們已經知悉SSI整體傳輸過程中,是如何交握資訊,接著將以條列的方式介紹本模組可傳遞哪些資訊給控制器。
MT: Multi-turn
ST: Single turn
S: Special bit
■ 備註: 各家Encoder廠商對於以上資訊,其定義的Bit數皆有所不同,因此將根據客戶提供的Encoder datasheet,決定各資訊之Bit數。
本模組額外提供兩個功能腳位,使客戶可根據自身的應用情境,彈性地搭配使用,分別為RESET與CW/CCW,其功能如(表1)所示。
(表1) 功能腳位之介紹
最後針對通信機制列出以下重點,希望可幫助讀者加速開發Master端
Master應於發送Clock前,先檢查Data信號是否為High一段時間,確保前一次的通信傳輸已經結束
Slave於Clock之Rising edge時,發送1Bit資料,並於Falling edge時,準備下一個Bit資料,因此Master應於Clock之Falling edge下,讀取Data信號,取得1Bit資料
Master取得所有資料後,應將Clock信號維持High一段時間(Tp),等待Data信號為High後,方能進行下一次的通信
凱登智動於未來不斷推出MR2相關應用與特點文章,敬請期待
如有任何問題歡迎請隨時聯繫我們,並給與我們指教
Comments