MX1508
是专用单芯片解决方案,芯片内部集成两路 H 桥驱动电路,可同时驱动转向电机以及前进后退电机。为电池供电的玩具、低压或者电池供电的运动控制应用提供了一种集成的有刷直流马达驱动解决方案。电路内部集成了两通道采用N沟和P沟功率MOSFET设计的H桥驱动电路,适合于驱动电动玩具车的转向轮及后轮驱动,(驱动有刷直流马达或者驱动步进马达的两个绕组)。该电路具备较宽的工作电压范围(从2V到9.6V)。
是专用单芯片解决方案,芯片内部集成两路 H 桥驱动电路,可同时驱动转向电机以及前进后退电机。为电池供电的玩具、低压或者电池供电的运动控制应用提供了一种集成的有刷直流马达驱动解决方案。电路内部集成了两通道采用N沟和P沟功率MOSFET设计的H桥驱动电路,适合于驱动电动玩具车的转向轮及后轮驱动,(驱动有刷直流马达或者驱动步进马达的两个绕组)。该电路具备较宽的工作电压范围(从2V到9.6V)。
MX1508单通道工作时,左转/右转通道用于驱动转向电机,最大持续输出电流达到 1.2A,最大峰值输出电流达到 1.5A。前进/后退通道用于驱动前进后退电机,最大持续输出电流达到 1.4A,最大峰值输出电流达到 2A;双通道同时工作时,左转/右转通道持续输出 0.8A 的情况下,前进/后退通道能持续输出 1.2A。该芯片具备较宽的工作电压范围(VM 端供电从 2V 到 8V),可覆盖 2 节干电池至 5 节干电池的应用。
该专用芯片内置过热保护电路。驱动电路的负载电流远大于电路的最大持续电流时,受封装散热能力限制,封装内部芯片的结温将会迅速升高,一旦超过设定值,内部电路将立即关断输出功率管,切断负载电流,避免温度持续升高造成塑料封装冒烟、起火等安全隐患。内置的温度迟滞电路,确保电路恢复到安全温度后,才允许重新对电路进行控制。
应用中注意采用PWM控制时,PWM频率不可太高,高了后无法响应,输出端并非PWM信号,导致控制失败,建议采用较低控制频率,两路PWM控制,注意不能采用互补控制,有效波形必须全部非高,否则电机刹车。控制电压建议小于10V,逻辑电平5V为宜。
主要特性
a. 低待机电流 (小于0.1uA);
b. 低静态工作电流;
c. 集成的H桥驱动电路;
d. 内置防共态导通电路;
e. 低导通内阻的功率MOSFET管;
f. 内置带迟滞效应的过热保护电路 (TSD);
g. 抗静电等级:3KV (HBM);
h. 集成的 H 桥驱动电路;
i. 高度集成方案,集成 RX2 芯片和两个马达驱动芯片;
j. 内置 2.5V 稳压 LDO 电路。
典型应用
2-5 节 AA/AAA 干电池供电的玩具马达驱动;
2-5 节镍-氢/镍-镉充电电池供电的玩具马达驱动;
1-2 节锂电池供电的马达驱动
MX1508双路马达驱动模块特点
1.采用专业电机驱动芯片,内置低导通内阻MOS开关管,发热极小,无需散热片,体积小,省电,是您电池供电的理想选择。(相比较L298N内部为晶体管开关,效率低,发热高,需散热,体积笨重,市面上的L298N极容易烧坏,都没有采用原装芯片,本模块能够完美替代)。
2.双路1.5A*2,峰值电流可到2.5A, 内置过热保护电路,不用怕电机堵转烧坏,温度下降后自动恢复(目前市面上的智能小车电压和电流都在此范围内)。
3.体积小,质量轻,0待机电流,是各种模型车载的理想选择。
MX1508双路马达驱动模块主要参数
双路H桥电机驱动,可以同时驱动两路直流电机或者1个4线两相式步进电机;
模块供电电压2V-10V;
信号端输入电压1.8-7V;
单路工作电流1.5A,峰值电流可达2.5A,低待机电流 (小于 0.1uA);
内置防共态导通电路,输入端悬空时,电机不会误动作;
内置带迟滞效应的过热保护电路 (TSD),无需担心电机堵转;
产品尺寸: 24.7*21*5mm (长宽高),超小体积,适合组装和车载;
安装孔直径:2 mm;
重量:5g 。
MX1508库的几个函数
1、motorGo(pwmVal)
这将设置PWM val(速度)其值为0-200(数值太小,电机只是抖动而无法转动,合适的数值需要通过实验来确定)
2、stopMotor()
只需停止电动机
3、setResolution(pwmResolution)
可以更改pwm的分辨率。要使用此功能,必须使用arduino nano / uno的9和10的pwm可以实现16位PWM。理论上,该值可以在0-65535之间的任何值)
说明:
MX1508电机驱动器的主要缺点之一是需要PWM引脚,每1台电机需要2 pwm引脚。通过实验发现,仅使用一个PWM和任何数字引脚,而不是使用2个不同的PWM引脚是可能的。这是一个巨大的折衷。电机转动一个方向所获得的响应不同于电机转动另一个方向所获得的响应。在一种方式中,将获得FAST_DECAY响应(线性响应,看起来像一个“ V”),然后在另一种情况下,将获得SlOW_DECAY响应(积极反应,看起来像个“ U”)。仅当绝对没有更多的PWM引脚时才应使用此功能。
1、motorGo(pwmVal)
这将设置PWM val(速度)其值为0-200(数值太小,电机只是抖动而无法转动,合适的数值需要通过实验来确定)
2、stopMotor()
只需停止电动机
3、setResolution(pwmResolution)
可以更改pwm的分辨率。要使用此功能,必须使用arduino nano / uno的9和10的pwm可以实现16位PWM。理论上,该值可以在0-65535之间的任何值)
说明:
MX1508电机驱动器的主要缺点之一是需要PWM引脚,每1台电机需要2 pwm引脚。通过实验发现,仅使用一个PWM和任何数字引脚,而不是使用2个不同的PWM引脚是可能的。这是一个巨大的折衷。电机转动一个方向所获得的响应不同于电机转动另一个方向所获得的响应。在一种方式中,将获得FAST_DECAY响应(线性响应,看起来像一个“ V”),然后在另一种情况下,将获得SlOW_DECAY响应(积极反应,看起来像个“ U”)。仅当绝对没有更多的PWM引脚时才应使用此功能。
实验之三:通过D9和D10的pwm引脚来实现16位PWM
使用功能setPWM16(uint8_t预分频器,unsigned int分辨率)的Arduino Nano / Uno引脚9和10的分辨率。
快速pwm频率的公式= MPU(16Mhz)/预分频器/分辨率的频率, F_PWM = 16000000 /预分频器/分辨率
预分频器参数值必须在1-5之间,分别代表1、8、64、256、1024。分辨率必须为0-65535之间的值。
MX1508(uint8_t pinIN1,uint8_t pinIN2,DecayMode衰减模式,NumOfPwmPins numPWM);
DecayMode必须为FAST_DECAY或SLOW_DECAY,NumOfPwmPins,对于setPWM16()函数,其值必须为2,PINA和PINB必须!!! 是setPWM16()函数的引脚9和10 。
示例MX1508 myMotor(10,9,FAST_DECAY,2)。
使用功能setPWM16(uint8_t预分频器,unsigned int分辨率)的Arduino Nano / Uno引脚9和10的分辨率。
快速pwm频率的公式= MPU(16Mhz)/预分频器/分辨率的频率, F_PWM = 16000000 /预分频器/分辨率
预分频器参数值必须在1-5之间,分别代表1、8、64、256、1024。分辨率必须为0-65535之间的值。
MX1508(uint8_t pinIN1,uint8_t pinIN2,DecayMode衰减模式,NumOfPwmPins numPWM);
DecayMode必须为FAST_DECAY或SLOW_DECAY,NumOfPwmPins,对于setPWM16()函数,其值必须为2,PINA和PINB必须!!! 是setPWM16()函数的引脚9和10 。
示例MX1508 myMotor(10,9,FAST_DECAY,2)。
【花雕动手做】超迷你哦,用商徽香烟盒做个智能小车!
你好,我最近在用这个模块的时候出了点问题。我用3.3V供电STC8G2K64S4单片机和mx1508模块,输入1和0也就是高低电平电机并不会转动,只有输入两个高电平的时候电机才转动,而且只能朝一个方向转动,请问这是什么问题