I need to control the drive current to my motor in finer steps than can be achieved with just the TRQ control. Not having a PWM signal available, I instead implemented a simple 4 bit DAC by using open collector outputs drive a series of resistors, with the summing node also connected to the Rref resistor (with no buffering). This works, and gives me adequate control when combined with the TRQ control. However, I am seeing a strange behavior that I cannot understand: I set up the resistor network such that the lowest current setting (highest voltage) is about 1.2V, as recommended. However, from a power-on reset the voltage at this node goes to about 1.5V. Obviously, current flow into/out of the Rref pin will affect the voltage at this node, and I guessed that the SLEEP signal (which is asserted low by the system reset) turns off the current reference circuit. Unfortunately, de-asserting SLEEP caused the voltage to increase to about 1.6V. It appears that to get the circuit back to the design intent I have to set my DAC to produce a low voltage on the summing node. After doing that, when I set it back to the high voltage (low motor drive current) level it is at the correct voltage of 1.2V. This suggests that the current reference circuit in the DRV8884 needs some initialization.
Does this make any sense? If so, what would the best initialization procedure be? If not, what else could explain the strange behavior I am seeing?
Thanks,
Greg