MS35230TE——12V、256 细分静音步进电机驱动器

电子说

1.3w人已加入

描述

产品简述

  MS35230TE 是一款 12V 静音步进电机驱动芯片,工

作电压最大可以到 15V,输出 RMS 电流 1A。芯片内置

256 细分的微步进驱动技术,静音与低振动特性适合于

各种精微控制系统。

  芯片集成通用的 I 2C 接口以及内部指令缓存器,使

得控制电机运行得更加流畅。输入逻辑电平兼容 3.3V/5V

的标准工业接口。

主要特点

◼步进电机驱动,支持全步进到最高

  256 微细分步进

◼静音、低振动

◼I 2C 串行总线通信控制

◼具有指令缓存功能,电机按照当前指

  令转动时,预存下一条指令

◼欠压保护、限流保护、过流保护、

  过温保护

◼待机保持电流可调节

◼内置系统时钟,省去外部时钟

◼省电休眠模式下电流<1μA

◼eTSSOP16 封装

应用

◼机器人,精密工业设备

◼摇头机

◼监控摄像机

◼静音对焦系统

产品规格分类

12V

内部框图

12V

管脚图

12V

管脚说明

12V

极限参数

  芯片使用中,任何超过极限参数的应用方式会对器件造成永久的损坏,芯片长时间处于极限工作

状态可能会影响器件的可靠性。极限参数只是由一系列极端测试得出,并不代表芯片可以正常工作在

此极限条件下。

12V

电气参数

VM=12V 。注意:没有特别规定,环境温度为TA= 25°C ±2°C。

12V

如有需求请联系——三亚微科技 王子文(16620966594)

12V

功能描述

  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。

12V

  注意读操作时不能设置 MAP,因此需要一个终止的写操作作为一个头码。如图 2 所示,在作为

MAP 的应答后发送一个停止条件,则写操作终止。

2. 寄存器说明

  寄存器地址指针(MAP)。MAP 有 8 位字长,它包读和写的控制端口地址,在每个控制端口读或写

完成后自增。MAP 位如图 1 或 2 所示。

寄存器表如下

12V

注:

1. 电机框图中的 LOGIC 部分,分为通信模块和功能模块。通信模块负责 I 2C 通信,功能模块负责电机

运行控制。

2. 在上电复位之后,通信和功能模块的寄存器都被置为初始态,0x07 初始值 0xFF,0x08 初始值

0x0F。

3. 通过 cmd_nRST 复位后,仅功能模块的寄存器被置为初始态,但是通信部分的寄存器并不会被复

位。此时读取寄存器仍会读到之前的配置值。

4. 写入 寄存器的数据在其所属地址(的数据)写入完成后确定。

5. msMode, rt, freq 和 pulse 寄存器有缓存寄存器,除这些之外的寄存器组则没有。

6. FLAG 管脚为开漏输出,上拉后默认输出高电平。当以下任一情况发生:

① 一组配置运行结束。

② 欠压事件发生。

③ 过流事件发生。

此时,FLAG 管脚会输出一个宽度为 t 的低电平脉冲信号,可用于通知主控。脉冲宽度 t 计算如下:

12V

12V

如有需求请联系——三亚微科技 王子文(16620966594)

12V

  发送 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

12V

12V

  当电机运行结束后,若运行电流配置值>保持电流配置值,则每 10ms 当前电流衰减 1 个单位,

(amp 满幅值 127 单位)。若保持电流配置值>运行电流配置值,运行结束后电流不衰减。

2.16 ampHoldDelay

ampHoldDelay 用于控制运行结束后,切换至保持电流的等待时间。

12V

注:运行结束指电机指令停止且缓存器内无缓存的配置。

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 寄存器,可在电机正在运行时暂时寄存输入的指令,电机执行完当前

任务之后会接续按照寄存的指令继续运行。

12V

  步进电机的运行指令(msMode, cycle, rt, pulse)在 confLoad 写入后确定。当前指令运行时,再次载

入的配置会暂存于 Cache 寄存器,在当前指令完成后被接续。Cache 中已经寄存配置时仍可接收后载

入的配置,新输入的配置会覆盖原有配置。

  在写入 confLoad 时,需要避免配置载入时刻与上一配置完成时刻同时发生。建议通过中断检测

FLAG 引脚或者寄存器读取 motorRunning 位,待电机停止运行时,再对 confLoad 写 1 载入。如实际应

用中,确实需要提前对 confLoad 进行操作,那么需要确保在电机运行结束前完成操作。

12V

12V

如有需求请联系——三亚微科技 王子文(16620966594)

12V

5. 芯片的步数计数功能

  芯片内置一个计数器,当正转时增量计数,反转时减量计数,客户可以通过读此计数器的值来确

定位置。也可以通过比较此计数器与实际发送的值,来计算由于欠压、过流、过温等异常导致的丢

步。详情见寄存器 pulseRecord、 recordRev 的描述。

6. 芯片的时钟

  芯片内置集成一个 OSC 时钟振荡器,频率为 20MHz。此时钟的波动范围约±3%。

典型应用图

12V

封装外形图

eTSSOP16

12V

——爱研究芯片的小王

审核编辑 黄宇

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分