Electrical – Arduino 3.3 V to 5 V to controll Stepper Driver MA860H

3.3varduinolevel-shiftingnpn

I'm currently working on a project with an Arduino Due and Stepper Driver MA860H. The issue I'm running into is translating a step Direction and Pulse from the Arduino Due to the MA860H. The Due has 3.3 V output and the MA860H needs a 5 V signal.

MA860H Stepper Driver

In the beginning of the project I had done some research and figured all I would need is a voltage translation from 3.3 V input to 5 V output. I went ahead and purchased Spark Fun Voltage Level translator. I got all the parts together and soldered the appropriate wires together and I'm unable to get the right voltage through the Level translator. In the past I have worked with this driver before, but with an Arduino Uno. This seemed to work just fine. So I know its possible with an uno at 5 V. My only other option is to use the Due for TFT, hall effect sensor data, and then running the test. Then I would have a Uno that would run the motor once the due told it through digital write. In the end this might be the easier route to go, instead of trying to get the due to do 4 things at once.

Best Answer

You don't need anything as fancy as a voltage translator. Figure 10 of the manual shows a connection using open-collector outputs; all you need to do is replicate that by hand. You can do this with either discrete NPN transistors or a chip such as the ULN2003/2803. You don't even need to connect the COM pin since the driver is not an inductive load.