I'm connecting the Wixel MCU
to the VNH5019 Motor Driver
board to drive a motor.
Schematic: (Apologies for quality... probably won't use my tablet for this sort of thing again)
This is a partial schematic... other pins on the Wixel go to an XBee board. A 5V switching regulator converts 12V to 5V, and the Wixel has its own built-in 3.3V regulator.
When testing this setup (with partially implemented software; PWM is still WIP), I can correctly drive pins P1_1 or P1_3 high, and get LEDs on the motor driver to light up as expected when I tell the motor to spin. However, when the motor is not spinning, my multimeter still measures 3.3V between P1_1 (or P1_3) and Gnd... If I hook up an extra LED+resistor between P1_1/P1_3 and GND, the LED only lights up when I direct the motor to spin.
So somehow the GPIO pins on the Wixel aren't doing a good job of holding low? Should I be using pull-down resistors, and are the below green additions a correct implementation?
Also in the diagram, I have an NPN transistor with connections Collector=5V, Base=3.3V GPIO (P1_5), and Emitter=Laser diode. This works fine, as well. The one weird thing I'm seeing is that when I power up, the laser is weakly on. When I press a button that enables the laser, it goes to full brightness. I release the button, and the laser goes completely off. I can't reproduce that initial state after startup. Is this another candidate for some sort of pull-down resistor? Can funky things happen if I do 3.3V to the Base, while 5V to the Collector?