產品簡述
MS35230TE 是一款 12V 靜音步進電機驅動芯片,工
作電壓最大可以到 15V,輸出 RMS 電流 1A。芯片內置
256 細分的微步進驅動技術,靜音與低振動特性適合于
各種精微控制系統。
芯片集成通用的 I 2C 接口以及內部指令緩存器,使
得控制電機運行得更加流暢。輸入邏輯電平兼容 3.3V/5V
的標準工業接口。
主要特點
?步進電機驅動,支持全步進到最高
256 微細分步進
?靜音、低振動
?I 2C 串行總線通信控制
?具有指令緩存功能,電機按照當前指
令轉動時,預存下一條指令
?欠壓保護、限流保護、過流保護、
過溫保護
?待機保持電流可調節
?內置系統時鐘,省去外部時鐘
?省電休眠模式下電流<1μA
?eTSSOP16 封裝
應用
?機器人,精密工業設備
?搖頭機
?監控攝像機
?靜音對焦系統
產品規格分類
內部框圖
管腳圖
管腳說明
極限參數
芯片使用中,任何超過極限參數的應用方式會對器件造成永久的損壞,芯片長時間處于極限工作
狀態可能會影響器件的可靠性。極限參數只是由一系列極端測試得出,并不代表芯片可以正常工作在
此極限條件下。
電氣參數
VM=12V 。注意:沒有特別規定,環境溫度為TA= 25°C ±2°C。
如有需求請聯系——三亞微科技 王子文(16620966594)
功能描述
MS35230TE 通過 I 2C 總線去控制電機的轉動。步進電機控制器可以選擇全步進 1/256 的步進模
式。
1. I 2C 總線接口
芯片接口為 I 2C,SDA 是一個雙向數據線,SCL 是時鐘輸入。圖 1 和 2 分別顯示了一個寫和一個讀
周期的信號時序。當時鐘信號為高電平時,SDA 有一個下降沿作為起始條件;時鐘信號為高電平時,
SDA 的上升沿作為結束條件。SDA 的其它所有變化都發生在時鐘信號為低電平時。
MS35230TE 的通信中,在起始條件后,由 7 位芯片地址和 1 位讀/寫位(高為讀,低為寫)組成的
第一個字節(ADDR)被發送到 MS35230TE。7 位地址的第 1 位、第 2 位由 ADDR1 和 ADDR0 的高低電平控
制,末 5 位為固定的 10000。地址的第 8 位是讀/寫位。如果是一個【寫】操作,接下來的一個字節包
含寄存器地址指針(MAP),用來選擇的所要讀或寫的寄存器。如果是個【讀】操作,將輸出 MAP 所指
的寄存器的內容。MAP 自動遞增,寄存器的數據將會依次輸出。每一個字節由一個應答位(ACK)分隔
開。在每次輸入字節讀取后 MS35230TE 輸出應答位,每一個傳輸的字節后微控制器發送應答位給
MS35230TE。
注意讀操作時不能設置 MAP,因此需要一個終止的寫操作作為一個頭碼。如圖 2 所示,在作為
MAP 的應答后發送一個停止條件,則寫操作終止。
2. 寄存器說明
寄存器地址指針(MAP)。MAP 有 8 位字長,它包讀和寫的控制端口地址,在每個控制端口讀或寫
完成后自增。MAP 位如圖 1 或 2 所示。
寄存器表如下
注:
1. 電機框圖中的 LOGIC 部分,分為通信模塊和功能模塊。通信模塊負責 I 2C 通信,功能模塊負責電機
運行控制。
2. 在上電復位之后,通信和功能模塊的寄存器都被置為初始態,0x07 初始值 0xFF,0x08 初始值
0x0F。
3. 通過 cmd_nRST 復位后,僅功能模塊的寄存器被置為初始態,但是通信部分的寄存器并不會被復
位。此時讀取寄存器仍會讀到之前的配置值。
4. 寫入 寄存器的數據在其所屬地址(的數據)寫入完成后確定。
5. msMode, rt, freq 和 pulse 寄存器有緩存寄存器,除這些之外的寄存器組則沒有。
6. FLAG 管腳為開漏輸出,上拉后默認輸出高電平。當以下任一情況發生:
① 一組配置運行結束。
② 欠壓事件發生。
③ 過流事件發生。
此時,FLAG 管腳會輸出一個寬度為 t 的低電平脈沖信號,可用于通知主控。脈沖寬度 t 計算如下:
如有需求請聯系——三亞微科技 王子文(16620966594)
發送 forceStop 指令后,pulse 運行寄存器和緩存寄存器將被清零,msMode, cycle, rt 的運行寄存器
和緩存寄存器將保持。forceStop 置 1 期間發送 confLoad 無效。forceStop 重新置 0 后,可以直接發送
confLoad 使電機按原有設置運行,也可以重新發送 msMode, cycle, rt, pulse 等來更新設置。此時更新后
的設置將在下一個 confLoad 發送后被應用。
2.9 cycle
注:1. 初始態僅在釋放復位信號(上電復位或 cmd_nRST 指令復位)后存在,請勿將 Cycle 設置到禁用
范圍。
2. fclk 為提供給主邏輯的時鐘頻率,此處以外接時鐘 24MHz 為例。
例:cycle = 0x02EE
脈沖頻率 = 24e6/(750×16)=2000[pps]
2.10 rt
當電機運行結束后,若運行電流配置值>保持電流配置值,則每 10ms 當前電流衰減 1 個單位,
(amp 滿幅值 127 單位)。若保持電流配置值>運行電流配置值,運行結束后電流不衰減。
2.16 ampHoldDelay
ampHoldDelay 用于控制運行結束后,切換至保持電流的等待時間。
注:運行結束指電機指令停止且緩存器內無緩存的配置。
2.17 ocpClr, otsClr
ocpClr 和 otsClr 分別用于清除過流事件緩存和過溫事件緩存。
當發生過流事件或過溫事件,可以從這兩位寄存器中讀取到【發生過】的記錄,不代表一直在發
生。向對應的標識位寫 1,可將其置為 0。
2.18 pulseRecord, recordRev
pulseRecord 用于記錄已運行的 pulse 數,默認值為 0x0000。當 recordRev = 0(初始態),運行 rt
= 0 的配置時正向記錄(累加),rt = 1 時逆向記錄(累減),記滿 0xFFFF 后若繼續累加則翻轉為
0x0000,0x0000 后若繼續累減則翻轉為 0xffff。
recordRev 用于變更記錄極性,recordRev = 1 時, rt = 0 為逆向記錄,rt = 1 為正向記錄。向
pulseRecord(0x0A, 0x0B 地址)直接寫入可變更當前記錄值,當前記錄值在 0x0B 地址寫入完成后變更
(僅寫入 0x0A 不會變更,但對 0x0A 地址的寫入會被保持,在下一次 0x0B 地址寫入后生效)。在橋驅
關閉時(pdEN = 0 或過流事件、過溫事件發生時),不會記錄運行的 pulse 數。
2.19 緩存功能
MS35230TE 擁有 1 組 Cache 寄存器,可在電機正在運行時暫時寄存輸入的指令,電機執行完當前
任務之后會接續按照寄存的指令繼續運行。
步進電機的運行指令(msMode, cycle, rt, pulse)在 confLoad 寫入后確定。當前指令運行時,再次載
入的配置會暫存于 Cache 寄存器,在當前指令完成后被接續。Cache 中已經寄存配置時仍可接收后載
入的配置,新輸入的配置會覆蓋原有配置。
在寫入 confLoad 時,需要避免配置載入時刻與上一配置完成時刻同時發生。建議通過中斷檢測
FLAG 引腳或者寄存器讀取 motorRunning 位,待電機停止運行時,再對 confLoad 寫 1 載入。如實際應
用中,確實需要提前對 confLoad 進行操作,那么需要確保在電機運行結束前完成操作。
如有需求請聯系——三亞微科技 王子文(16620966594)
5. 芯片的步數計數功能
芯片內置一個計數器,當正轉時增量計數,反轉時減量計數,客戶可以通過讀此計數器的值來確
定位置。也可以通過比較此計數器與實際發送的值,來計算由于欠壓、過流、過溫等異常導致的丟
步。詳情見寄存器 pulseRecord、 recordRev 的描述。
6. 芯片的時鐘
芯片內置集成一個 OSC 時鐘振蕩器,頻率為 20MHz。此時鐘的波動范圍約±3%。
典型應用圖
封裝外形圖
eTSSOP16
——愛研究芯片的小王
審核編輯 黃宇
-
12V
+關注
關注
2文章
60瀏覽量
62697 -
步進電機驅動器
+關注
關注
0文章
87瀏覽量
12159
發布評論請先 登錄
相關推薦
評論