DC controll problem

Hi, i've got some trouble controlling a dc motor, maybe someone should help me.

Actually i'm doing some test controlling it with a TIP102 , using this scheme :

typical npn scheme. i've connected GPIO to an analog out and gave 255,and motor didn't spin.

i've connected GPIO to Vcc, and motor didn't spin.

i've putted a led in parallel to the DC, and it dont light up when i connect GPIO to Vcc, when i disconnect the DC motor and connect again to Vcc ,than led lights up again. :o :o

i've connected motor directly to Vcc and run like hell.

than i've gone to SN754410NE with this scheme :

typical dc configuration.

giving 1,0 to the two controll pin, finally motor spin ! but ... it spin slow, than after few seconds slow down ( i think because this motors absorb over than the actual SN754410NE max A out)

but the problem is that spins slow.

than i thought was the pwm frequency.

i've tested this code :

//First clear all three prescaler bits:
int prescalerVal = 0x07; //create a variable called prescalerVal and set it equal to the binary                                                       number "00000111"
TCCR0B &= ~prescalerVal; //AND the value in TCCR0B with binary number "11111000"

//Now set the appropriate prescaler bits:
int prescalerVal = 1; //set prescalerVal equal to binary number "00000001"
TCCR0B |= prescalerVal; //OR the value in TCCR0B with binary number "00000001"

that should bring pin 5 and 6 (TCCR0B controlled ) to 64khz ...

with no luck.

than i tested putting the value to 2 (00000010) that should bring it to 32khz ...

with no luck, the engine still spins slow.

what should i do now ?

i need to control this motor speed... otherwise i would use a stupid relay...

some one that can help me ? :(

i always used this circuits to control small dc, and they always worked...

On your first attempt, with the relay, you can't use a relay to drive a motor with PWM. You could drive the pin as a digital IO and turn the relay on and off. That would get the motor to full speed and off. Nothing in between. Best you can do with a relay.

Don't have any experience with a 754410, but it's a 1A H-driver. If your motor needs more than 1 A, that won't work.

nevermind, i managed the pwm problem. thank

This is a bit wierd ;) according to the datasheet, the BASE pin is the first pin, not the usual 2nd pin. Did you wire it correctly? this thing has shunt diode inside so it is possible that you got a bit current through, but at a risk to the arduino.

David