一片ULN2003(有16个引脚)有7个反相驱动器,可以分别不同时驱动7个继电器呢。其连接电路是非常简单的,1脚输入-16脚输出,2脚输入-15脚输出,一一对应的7个驱动器,8脚接地,9脚接继电器的电源,因内部有7个保护二极管要接到电源上。继电器一端接电源,另一端就接到ULN的某个输出端就OK了。其控制端就是对应的输入端啦。每一路的驱动电路可高达500mA。
用ULN2003驱动四相五线步进电机的电路图看不懂,哪位大神解释一下
LN2003也是一个7路反向器电路,即当输入端为高电平时ULN2003输出端为低电平,当输入端为低电平时ULN2003输出端为高电平,继电器得电吸合。

#include<stc.h>
#define it unsigned int
sbit s0=P3^2;//两个按钮
sbit s1=P3^3;//两个按钮
sbit j0=P3^4;//继电器控制口,这3个IO口要和你实际电路去更改。
void ys(it); //声明延时函数
void main()
{
while(1)
{
if(s0==0) //判断S按键是否按下 {
ys(5000); //延时消抖
if(s0==0) //在次判断按键是否真的按下(在次判断很有必要)
{
j0=1; //让继电器关闭

while(s0==0); //判断S按键是否放开,如果没有放开继续等待。放开后执行下面的代码。
}
}
if(s1==0) //判断S按键是否按下 {
ys(5000);
if(s1==0)
{
j0=0; //让继电器打开
while(s1==0);
}
}
}
}
void ys(it a) //延时函数
{

it x;
for(x=0;x<5000;x++)
for(x=0;x<a;x++);
}
那4个发光二极管只是用来指示的,并不是串联在电机线圈的,与线圈并联的,所以,发光二极管的电流大小与电机线圈电流大小无关。电机线圈是通过OUT接插件与右边的VCC,ABCD相连的。ULN2003输出电流是多少取决于电机的线圈的阻抗,但每一路的输出电流最大可达500MA。


