|
想用单片机去修复一个废置的玩具直升机,但在驱动电机时就出现问。电机是由玩具飞机中拆卸出来的,接入单片机5v电源会出现芯片异常发热(ULN2003)且运行一段时间,电机速度自动下降(同时伴随s2、s3等led点亮)。求大神讲解一下这样的电机应该怎么样驱动,我是直接将电机的一路插入5v扩展口,一路插入给定信号为1的扩展口。
单片机源程序如下:
#include <STC15F2K60S2.h>
#define uint unsigned int
#define uchar unsigned char
sbit s1 =P4^1;
sbit key1=P3^2;
sbit key2=P3^3;
void delay_ms( uint n )
{
while( n )
{
uchar i, j;
i = 11;
j = 190;
do
{
while ( --j );
}
while ( --i );
n--;
}
}
void main()
{
key1=1;
key2=1;
s1=0;
while(1)
{
if(key1==0)
{
delay_ms(10);
if(key1==0)
{
s1=1;
}
}
if(key2==0)
{
delay_ms(10);
if(key2==0)
{
s1=0;
}
}
}
}
|
|