首页 > 编程知识 正文

L9110H电机驱动模块 Arduino 小水泵小风扇,无刷小电机驱动

时间:2023-05-04 06:55:38 阅读:217457 作者:4169

L9110H电机驱动模块 Arduino UNO 明亮的自行车版

写这篇文章的前一天刚写完了一个A4950驱动的详细解析,然而刚好在做一个物联网花盆的时候,发现了这个驱动小水泵的L9110H电机驱动模块,想着简单研究一下,留个资料给学弟学妹们以后参考,然后我惊奇的发现,L9110H模块,和A4950驱动的操作方式一毛一样毛都不变,两个的区别就是L9110H没有外接的驱动电源,是一个直接接单片机的5v驱动器,然后我就把我上一篇发的代码直接烧了进去改了一下两个PWM的引脚号好用的一批,驱动一个小水泵,直流电机小风扇还是相当实用的

1.实验准备

1.Arduino UNO 单片机
2.直流减速电机
3.L9110H电机驱动模块

2.L9110H电机驱动模块简介


一个L9110H电机驱动模块可以驱动两个电机
L9110H驱动模块是通过比较两个控制引脚输出PWM的大小关系来确定电机方向的
两个控制引脚输出PWM的差值决定电机的转速
和A4950 驱动模块一样

2.1接线图 L9110H引脚对应引脚VCC单片机5VGND单片机GNDA-1A控制A电机的1号PWM引脚A-1B控制A电机的2号PWM引脚B-1A控制B电机的1号PWM引脚B-2A控制B电机的2号PWM引脚MOTOR A电机AMOTOR B电机B程序代码 unsigned int Motor_A_1A=10; //控制A电机的PWM引脚 一定改成自己用的unsigned int Motor_A_1B=11; char Motor_Order; //定义一个字符型变量存储串口输入命令void setup() { Serial.begin(9600); //打开串口 Serial.println("/*****开始驱动*****/"); pinMode(Motor_A_1A,OUTPUT); //设置两个驱动引脚为输出模式 pinMode(Motor_A_1B,OUTPUT); }void loop() { while(Serial.available()>0) //检测串口是否有命令 { Motor_Order=Serial.read(); //将命令存储在变量中 switch(Motor_Order) { //发送字符1电机正转 case '1' : analogWrite(Motor_A_1A,250); analogWrite(Motor_A_1B,0);Serial.println("/*****电机正传*****/");break; //发送字符2电机反转 case '2' : analogWrite(Motor_A_1A,0); analogWrite(Motor_A_1B,250);Serial.println("/*****电机反转*****/");break; //发送其他字符电机停转 default : analogWrite(Motor_A_1A,0); analogWrite(Motor_A_1B,0);Serial.println("/*****停转****/");break; } }}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。