I am running an ARM STM32 at 3.3V, and need to use the PWM to talk with some industrial motor controllers that use 5.0V PWM logic. Specifically, my motor controllers say that the PWM inputs are 74HC14 Schmitt triggers, 100ns RC-filter, Vin-LO < 1.35Vdc, Vin-HI > 3.65Vdc, Vmax=12.0V.
The PWM frequency range that the motor controller can handle is 1kHz minimum to 100kHz maximum.
These inputs on the motor controllers also have pull-up/pull-down control – they can be configured to be internally pulled up to 5.0V or pulled down to ground. The data sheet says:
I can’t seem to find in the STM32 documentation whether the I/O’s are open collector or NPN. Does anybody know about this?
Can anybody recommend a simple way to step up the voltage of a digital output pin from 3.3V to 5.0V (or anything >3.65 and < 12.0V)? Or, if I configure the motor controller inputs to be pulled up to 5.0V internally, will an STM32 be able to sink enough current to ground the pin and allow for the PWM to work properly?
~Luke