I'm working with the DRV103 PWM driver chip; this chip generates an initial long pulse followed by PWM and is useful for driving coils/solenoids. The problem is, this chip operates at 8-32V, while the solenoids I'm driving with it operate at 48V.
Normally this would be simple amplification, but it's complicated by the fact that the DRV sinks rather than sourcing, with it's OUT pin pulled high to its supply voltage while 'off' and sinking low when 'on'. This means I have to change a PWM supply that sinks from ~20V to GND to one that sinks from 48 to GND.
I've come up with this circuit, is there a way to do it with a single transistor/component? The output must be active when DRV_OUT is low, to preserve the initial long pulse, and the solenoid is expected to draw 600-700mA. The PCB this circuit will be on only has a single 48V input, which I've regulated down to power the DRV.
The resistor divider is there because the cheap transistors I've got in there can only tolerate up to 20V at the gate (but up to 60V drain-to-source). DRV_OUT has a pullup resistor not shown here.