EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 Heaven_1 于 2022-6-2 15:55 编辑 9 y& V7 c$ X" u
& a2 e; Y' e; D! k Q- |& ZMS35009描述 MS35009 是一款镜头驱动系统芯片,由于它的微步进特性,可以满足复杂,精致,低噪音的镜头驱动系统。微步进驱动功能控制模块集成在芯片中,可以极大降低 CPU的功耗。另外,芯片集成了直流电机与音圈电机马达驱动,可以满足不同的镜头系统。 特点 内置 7 个通道的驱动模块,H 桥最大驱动电流±0.8A SPI 串行总线通信控制电机 负载电压范围:2.7V--5.5V QFN44 封装 MS35009 pin=pin BU24025 MS35009封装 1 M! G) q. e* h+ V1 n8 D" I, w
% c) H& H. B; Y# B* S管脚图 ![]()
; p; A4 x O% Y* _+ h* e1 o3 _( |1 v/ w" N+ y9 C# v* T/ c: x( Q0 N
管脚说明图 4 X9 _5 q# o0 H) t
3 G# ~6 K: L1 F) ^* I: T; }
8 t/ |6 h. Y) |0 k
9 ]# K8 C6 B" Q2 }6 y }* x) d内部框图 3 }* z6 k' a# C
; A* W0 q- j7 E0 m& ~7 R, f% @功能描述 系统模块介绍 步进电机驱动(第 1 到 4 通道) 内置细分的 PWM 驱动模式,最多可以驱动两个步进电机。 内置电压反馈的类似 D 类功放的驱动模式。 第 3,4 通道可以做为独立的直流电机驱动或者音圈电机驱动. 步进电机通过设置相关的寄存器进行行为控制。可以选择 1024 的微细分模式,1-2 相位,2 相位模式。另外系统带指令缓存器,当电机在运转当前指令时,设置后面的指令,从而电机可以持续运转。 电机的运行状态指示 ACT,与电机转动位置信息 MO,可以通过 STATExx 脚读出。 控制框图如下: ![]()
2 K* K+ i% v$ N. y# I( d" B; Q0 F) l. V. D4 W
直流电机驱动(第 5 通道) 直流电机驱动是电压型的 PWM 斩波控制。 此电机驱动既可以通过 SPI 设置寄存器设置,同时由于外置了直接控制管脚,也可以通过外部的管脚控制,又或者可以两者结合的混合控制。 SPI 模式控制: 0 X* g5 N8 N, w$ K$ p. h5 L. Y
1 J+ m/ i' Z, @7 L7 \4 |& ^- @7 M
& k8 ?7 C' R7 V: U% F
7 S8 f- C& \& ~8 u. x
电流型直流驱动(第 6,7 通道) 第 6,7 通道为电流型的输出驱动,内置恒电流模式的驱动器。 RNF 脚的电压与 RNF 脚的电阻关系,决定了电机的输出电流,内部集成了高精度的比较器来是电流稳定。 如果 RNF 脚存在寄生的电阻,将会影响电流的精度,需要特别注意。 电流型的驱动可以通过 SPI 来设置寄存器的方式控制,也可以与外部的输入脚混合控制。 SPI 控制模式:通过 SPI 设置电流大小,状态和方向。 , r+ N$ c# P, N. K- {2 S0 ]
$ Y0 I' o0 J; H. G1 Y6 o系统应用 ![]()
; j O7 \" o% [2 n! a, e
# Z- }6 N0 t1 P- j7 D& M$ I) z寄存器 5 i8 p8 q3 [1 {9 M
2 Q; e. W9 _ h3 O# w- ~7 b) T注: 1. 寄存器表中,xxA 与 xxB 分别对应于 Ach 和 Bch。 2.Ach 被定义为由 1ch 和 2ch 驱动输出,Bch 被定义为由 3ch 和 4ch 输出。 3.在复位(resetting)之后(包括上电复位和通过 CMD_RS 寄存器复位),所有寄存器都被置为初始态。 4.对于 Mode, DOV, Cycle, En 和 Rev 寄存器,写入的数据在 Pulse 寄存器写入之前等待,在 Pulse 寄存器数据写入完成后的 CSB 信号上升沿被应用。且 Mode, DOV, Cycle, En 和 Rev 寄存器有缓存寄存器,除这些之外的寄存器则没有。 5. 对于 Pos, FSP, DCM_Chop, DCM_State 和 PWM_duty 寄存器,写入的数据在数据写入完成后的 CSB 信号上升沿被应用,除这些之外的寄存器的写入数据在第 16 个 SCLK 信号上升沿被应用。 Cache 寄存器 此大规模集成电路拥有两组缓存器,可在电机正在运行时暂时寄存输入的数据,电机执行完当前任务之后会接续被寄存的数据继续运行。 另外,CacheM 寄存器用于选择缓存器的工作模式。 典型示例: (1) CacheM = 0 # t+ S; k3 ^4 `* j
! {4 i7 q$ s; N8 _在 Pulse 寄存器数据写入完成后的 CSB 上升沿,初次运行状态被确定。ACT 信号在 Pulse 寄存器输出生效时变为高电平,输出完成后变为低电平。在 Pulse 寄存器输出时输入的数据会暂存于缓存器,在当前任务完成后再被接续。 CacheM 寄存器置 0 时,两组缓存器生效,当这两组寄存器都被写入时(寄存了 2 组数据),BUSY 信号变为高电平,且不再接收新的数据输入。 (2) CacheM = 1 ![]()
6 J2 ^6 C- v6 C, D! p4 I, D" B( E+ X# G u
在 Pulse 寄存器数据写入完成后的 CSB 上升沿,初次运行状态被确定。ACT 信号在 Pulse 寄存器输出生效时变为高电平,输出完成后变为低电平。在 Pulse 寄存器输出时输入的数据会暂存于缓存器,在当前任务完成后再被接续。 CacheM 寄存器置 1 时,只有 1 组缓存器生效,当这组缓存器寄存数据后,BUSY 信号变为高电平,但仍可接收新输入的数据。新输入的数据会覆盖原先寄存于缓存器的数据。 典型应用图
4 @" y3 V# s& t: ^
7 g0 V3 j3 L$ _ |