标题: 求大神给个89c52驱动L293D直流电机程序 [打印本页]
作者: 51初学自主研发 时间: 2018-5-25 21:12
标题: 求大神给个89c52驱动L293D直流电机程序
作者: 1145284121 时间: 2018-5-25 23:30
引脚说明:
1 Enable 1-2:作为左半边IC控制用。当这个Pin为高电压时,左半边IC可作用,反之,低电压时,左半边IC无作用。
• 2 INPUT 1:当这个Pin为高电压时,电流会流出至Output 1。
• 3 OUTPUT 1:这个Pin要接到终端马达的一个接脚。
• 4,5 GND:接地。
• 6 OUTPUT 2:这个Pin要接到终端马达的一个接脚。
• 7 INPUT 2, 当这个Pin为高电压时,电流会流出至Output 2。
• 8 VC:供给给马达使用的电压,如果要驱动的马达是12V,那就要供给这个Pin 12V直流电。
• 9 Enable 3-4:作为右半边IC控制用。当这个Pin为高电压时,右半边IC可作用,反之,低电压时,右半边IC无作用。
• 10 INPUT 3,:这个Pin为高电压时,电流会流出至Output 3。
• 11 OUTPUT 3:这个Pin要接到终端马达的一个接脚。
• 12,13 GND:接地。
• 14 OUTPUT 4:这个Pin要接到终端马达的一个接脚。
• 15 INPUT 4:当这个Pin为高电压时,电流会流出至Output 4。
• 16 VSS:提供给IC的电源,这个Pin要供给5V电压。
(直接引用的网上的,和proteus仿真不太一样,不过原理一样的)
接GND时,
EN1=1;EN2=0时,仅34电机转;(即output3/4输出了电流)
EN1=0;EN2=1时,仅12转;
EN1=1;EN2=1时,都转;
EN1=0;EN2=0时,都不转
接VCC时相反喽
附个简单程序,
#include<reg52.h>
sbit IN1=P1^0;
sbit IN2=P1^1;
sbit EN1=P1^2;
sbit EN2=P1^3;
sbit IN3=P1^4;
sbit IN4=P1^5;
void main()
{
EN1=0;
EN2=0;
while(1)
{IN1=1;IN3=1;
IN2=1;IN4=1;}
}
-
QQ截图20180525232948.png
(23.25 KB, 下载次数: 46)
-
QQ截图20180525232553.png
(26.01 KB, 下载次数: 57)
作者: 1145284121 时间: 2018-5-25 23:38
也可以不用GND或者VCC,直接用电机连out3和out4/1/2什么的,反正懂原理再怎么搞就结合实际情况喽
作者: zl2168 时间: 2018-5-26 18:39
本帖最后由 zl2168 于 2018-5-26 18:40 编辑
实例100 直流电机正反转及PWM调速
先Proteus仿真一下,确认有效。
以上摘自张志良编著《80C51单片机仿真设计实例教程——基于Keil C和Proteus》清华大学出版社ISBN 978-7-302-41682-1,内有常用的单片机应用100案例,用于仿真实验操作,电路与程序真实可靠可信可行。书中电路和程序设计有详细说明,程序语句条条有注解。
作者: meczp 时间: 2018-10-4 14:59
您好,请问单纯地用IC1-L293D电机驱动模块就可以驱动电机吗?
欢迎光临 (http://www.51hei.com/bbs/) |
Powered by Discuz! X3.1 |