【教程】直流电机两线驱动库(支持L298和L9110)
本帖最后由 ninjiafan 于 2014-10-4 16:59 编辑这个库是自写自用的,目前运行良好,支持L9110和L298两种电机驱动模块,只需要一路PWM和一路数字脚即可控制电机正反转转速和停止。
L9110的两路输入脚随意接PWM和数字脚各一就好。
L298可以同时控制两个电机,需要把输入EN脚都接高电平,然后每个电机的两路输入随意接PWM和数字脚各一就可以了。
由于Arduino的定时器可能会干扰到PWM输出,所以我一般用D9和D10做为PWM输出,数字脚随意就好……
说明:
MotorDC motorDC(PWM脚,数字脚);
setSpeed(转速);
转速为0时,电机停转。
转速为正数时为正转,1-254为PWM,大于等于255均视为直通。
转速为负数时为反转,-1到-254为PWM,小于等于-255均视为直通。
举例两个电机控制就用D8(数字)+D9(PWM):
#include <MotorDC.h>
MotorDC motorDC(9,8);
void setup()
{
Serial.begin(9600);
Serial.println("Motor DC Library");
}
void loop()
{
// PWM 0 to 255
motorDC.setSpeed(63);
delay(10000);
// PWM -255 to 0
motorDC.setSpeed(-63);
delay(10000);
// Stop
motorDC.setSpeed(0);
delay(5000);
}
很感谢大神,要的就是这个。 大神NB啊,刚好能用上,太谢谢了! 有个问题想请教一下楼主:
有一个现成的机器,可以使用moto(端口,速度) 来使用马达。但是原来的马达驱动模块没有了,我想接298或者别的什么来使用。
看了它的接口,每个马达有四个口用来接驱动模块,分别是+ - D P。其中D是控制方向的,P是控制速度的。
测量了一下 +是3.2V
D控制方向,用程序和万用表配合检测:给反转是0V(对地),正转是3.2V
P控制速度,但是测下来好像是反的。停止时测得3.2V(对地),全速时候测得是0V,没有示波器,应该是pwm信号吧。
想请教一下,我如果用298来驱动马达的话,应该怎么接呢。 下载试试,谢谢分享! 这个库不错! 这个库挺好用的,正要用。。3q 这个库挺好用的,正要用。。3q 入手了两个L9110S芯片的驱动板,终于可以用了,有点可惜的是不带升压功能。谢~~
卖家提供的C51例子看不懂的说~http://pan.baidu.com/share/link?shareid=1359713279&uk=590225187 这个好!!楼主的串口通讯教程有没更新? 请问一下这个库驱动电机的频率是多少? :):):):):):) :):):)支持一下 下班后试试 这个和用analogWrite控制有什么区别吗?
页:
[1]
2