Okay, heres the thing. I have made a program on my atmega32 that measures RC servo pulses width, and makes a PWM 0-100% from 1-2ms pulses from the receiver. OK.
Then I need to amplify the PWM signal to my (roughly) 3-6 volts DC motor with a transistor. For the amplification I use an external power supply, not the uC ps from the dev. board (which is connected to mains power).
The problem really is that when PWM duty cycle increases, motor speed decreases. I use a NPN BDX53A transistor. I can post a schematic if you like. I know PWM signal is not inverted because I see it on my scope. I have also looked at transistor emitter which is just an amplification of the PWM signal from atmega32. Yet the motor speed increases with PWM decrease and decreases with PWM increase. What fundamental thing have I gotten wrong here?
edit:
Made a schematic anyway
Then I need to amplify the PWM signal to my (roughly) 3-6 volts DC motor with a transistor. For the amplification I use an external power supply, not the uC ps from the dev. board (which is connected to mains power).
The problem really is that when PWM duty cycle increases, motor speed decreases. I use a NPN BDX53A transistor. I can post a schematic if you like. I know PWM signal is not inverted because I see it on my scope. I have also looked at transistor emitter which is just an amplification of the PWM signal from atmega32. Yet the motor speed increases with PWM decrease and decreases with PWM increase. What fundamental thing have I gotten wrong here?
edit:
Made a schematic anyway
Last edited: