Le sugiero que estudie este otro Puente en H .
Te permite frenar como quieras (además de ir hacia delante, marcha atrás y por inercia). Pero, en mi opinión, la mejor característica de ese puente es que no permite combinaciones de entrada peligrosas que cortocircuiten los contactos de la batería, como la situación que experimentaste con tu circuito.
El truco de este h-brigde que mencioné es que inteligentemente utiliza 3 señales de control para encender los transistores diagonales (para mover el motor hacia delante y hacia atrás) sin dejarte nunca girar los dos transistores verticales (ambos a la izquierda, ambos a la derecha o los cuatro transistores) a la vez, evitando que cortocircuites los contactos de la batería.
El circuito frenos el motor cortocircuitando sus dos contactos con la masa de la batería. Lo hace encendiendo los transistores inferior izquierdo e inferior derecho, mientras apaga los superiores. También permite que el motor costa apagando los cuatro transistores. El circuito también aísla el circuito del motor de la MCU utilizando optoacopladores, lo que puede ser útil para proteger su MCU.
Probablemente podrías cambiar tu circuito para añadir estas características del puente h que te he mencionado, pero no lo sé seguro. Quizás algún usuario más experimentado pueda ayudarte con eso. Yo no puedo. Pero, por lo que sé, tendrías que añadir un pin de control, añadir dos transistores 2N5551 más y cambiar la forma en que están cableadas las cuatro bases 2N5551. Pero asegúrate de que leer y comprender los conceptos en la página que he mencionado anteriormente, para que pueda evaluar si el concepto funcionará con sus transistores y circuito . Si no estás seguro, intenta construir el circuito del puente en h que he mencionado tal cual, ya que el autor hizo un esfuerzo decente para seleccionar los componentes adecuados para su circuito.
Ya lo he hecho. Véase mi intento de construir el mencionado puente en h en esta pregunta mía . Funciona bastante bien.