Electronic – Reset pulse generated by UART break condition

analoglow-power

I'm trying to create a reset pulse triggered by external inputs to my circuit. My circuit is connected to an external 5V supply and TTL level UART (actually a half-duplex single line). I would like to generate a reset pulse for the local CPU when the UART line goes low for a long period.

My analog design experience is quite limited. I suspect I'm looking for a monostable multivibrator but I've no idea how to modify that standard circuit.

I initially created this circuit, but it generates a low level rather than a pulse, and on analysis, it can latch the board into a permanent reset state. A reset once-off pulse is required.
enter image description here

To be clear, here is a waveform of what I'm looking for. Any comms transmission should transition between 0 and 1 fast enough to prevent false triggering (for baudrates between 9600 and 115200, or more) . The condition for generating a low-going pulse should be 5V present with the comms line staying low for around 100ms . The low-going reset pulse should be long enough to allow various signals on the board to return to steady state – I say at least 1ms or more. Only 1 reset pulse should be generated per long low level "pulse" on the comms line.

enter image description here

The circuit is battery powered, so it needs to have low current consumption in while its not active.

Best Answer

Your original circuit is rather close to what you need. I have revamped it some using an LTSpice simulation. The one thing different from what you said you wanted was that the RESET_N pulse lasts as long as till the end of the UART break signal. That should not be a problem since your external system can adjust timing and COMMs cannot take place during the break period anyway.

I recommend changing the output inverter to an N-FET so that you get a higher threshold than the NPN transistor that you used.

You will also have to work out some type of bias pullup resistor for the TXD/RXD line so that when the external UART source is not connected that the transistor will stay ON. I did not show it since you did not describe the internal supply your circuit.

In the end it will probably be advantageous to power the circuit from your internal supply because when the external 5V is removed it would force the reset circuit to output a low. As a minimum have the drain pullup on the output FET tie off to the internal supply.

enter image description here

enter image description here