¿Puede un circuito de cambio de nivel cambiar el voltaje al revés?

Estoy trabajando en un proyecto en el que uso un FPGA y lo conecto a varios servos (llamados AX-12), que están conectados en cadena. Cada servos tiene una identificación única, por lo que estar conectados en cadena no es un problema. El FPGA transmite comandos a los servos y luego los servos responden transmitiendo sus propios paquetes (llamado paquete de estado, según la hoja de datos). Quiero centrarme en la parte de respuesta de esta pregunta .

Servos AX-12 conectados en cadena

El "CM-5" que ves en la imagen se reemplaza por el FPGA en mi proyecto.

De acuerdo con la hoja de datos ( que puede encontrar aquí ):

Para operar los actuadores Dynamixel, el controlador principal debe ser compatible con UART semidúplex de nivel TTL.

Para el controlador principal, estoy usando una placa de evaluación DE2 de Altera (que luego será reemplazada por DE0-Nano). Las salidas de esta placa para '1' son 3.3V. Si bien 3.3V funciona para TTL, descubrí que los servos responden mejor cuando reciben 5V.

Para hacer esto, uso este circuito de cambio de nivel:ingrese la descripción de la imagen aquí

Por lo que respecta a la parte de transmisión, todo está bien. El FPGA emite el '1' como 3.3V y los servos lo reciben como 5V, lo cual es bueno.

Mi pregunta es sobre el voltaje cuando recibo los paquetes de los servos. Supongo (no he comprobado) que los servos transmiten los bits del paquete de estado en 5V. ¿El circuito de cambio de nivel obtiene los 5 V y los vuelve a cambiar a 3,3 V? ¿Y de 0V a, obviamente, 0V? Si es así, ¿cómo funciona?

Si observa la hoja de datos, verá que el fabricante dice que debe usar un búfer con una resistencia pull-up a 5V. Intenté usar ese búfer y no funcionó tan bien. Entonces, lo que también estoy preguntando es, ¿ese circuito de cambio de nivel se usará como un búfer?

¡Gracias!

Respuestas (1)

¿El circuito de cambio de nivel obtiene los 5 V y los vuelve a cambiar a 3,3 V?

Sí, ese circuito funciona bidireccionalmente, aunque podría ser una buena idea tener una resistencia desplegable en la línea lógica de 3,3 V a 0 voltios (consulte más adelante el contraargumento).

Cuando el lado de 5V está a 5V, R1 eleva el lado de 3V3 a través de la unión base-emisor (un diodo con polarización directa). Cuando el lado de 5 V está a 0 V, la región del colector de base se polariza hacia adelante y esto reduce la base a aproximadamente 0,7 voltios y el emisor (con la resistencia desplegable mencionada) caería a 0 voltios.

Sin embargo, podría argumentar que el transistor funciona (aunque con beta reducida) en un modo al revés (es decir, lugares de intercambio de colector y emisor). Esto naturalmente tendería a pensar en un pull-up en la línea 3V3. Prefiero usar una versión MOSFET: -

ingrese la descripción de la imagen aquí

Es un poco más claro cómo el lado de 5V arrastra el lado de 3V3 hasta 0V: utiliza el diodo del cuerpo en el MOSFET para lograr esto y, por lo tanto, no necesita un menú desplegable en el lado de 3V3.

¡Gracias! Tengo algunas preguntas sobre cosas que no me quedan claras. Algunos pueden tratarse de términos técnicos porque el inglés no es mi idioma nativo y esos términos no siempre los entiendo.
1. "R1 tira hacia arriba del lado 3V3". ¿Qué significa eso? ¿Que debido a R1, el lado de 3.3V obtiene un voltaje de 3.3V? 2. Si la respuesta a 1 es verdadera, si la base obtiene un voltaje de 3,3 V debido a R1 y hay una caída de voltaje de 0,65-0,7 V en Vbe (Vbe = Vb - Ve), ¿no significa eso que Ve = Vb - Vbe = 3,3 - 0,7 = 2,6 V? 3. "La región del colector base se polariza hacia adelante": ¿eso significa que hay un cortocircuito entre la base y el colector? ¿Eso es porque el transistor está saturado?
1) R1 está conectado a la línea 3V3 a través de un diodo que tiene una polarización directa natural en todas las circunstancias cuando la línea 3V3 está cargada. Cuando está descargada (o con una carga muy ligera), la línea 3V3 se sitúa naturalmente en torno a los 2,6 voltios. Esa es la acción de un pull-up y, aunque a 2,6 voltios, esto es más que suficiente para representar un nivel lógico 1 en un sistema 3V3. 2) Ajá (!) ¡Veo que lo has resuelto por ti mismo! Buen hombre.
4. Me da vergüenza preguntar esto, pero, ¿cómo funciona esa resistencia desplegable? ¿Toda la corriente va a tierra debido a la resistencia desplegable, lo que significa que el FPGA no recibe corriente en absoluto? ¡Y vaya que respondes rápido! Gracias de nuevo.
Todavía estoy debatiendo los pros y los contras de un pull-down frente a un pull-up para la línea 3V3. Si usa un desplegable, tiene que ser "ligero" y significativamente más alto en resistencia que R1; de lo contrario, se formará un divisor potencial, por lo que algo así como 100 kohms estaría bien. Cualquier corriente en la entrada de un FPGA será, en el mejor de los casos, nanoamperios, por lo que puede ignorar su efecto de carga.
Hola, sé que esta es una pregunta antigua, pero esperaba que pudieras ayudarme con algo aquí. Empecé a pensar en el otro circuito que sugirió, con el N-MOS BSS138, y simplemente no podía entender por qué funciona. Lo simulé y se me ocurrió esto: ibb.co/gBqSTe ibb.co/mkSJZK . Uno es cuando recibo 5V y el otro cuando recibo 0V.
No entiendo, por lo que parece, Vgs siempre será 0V y Vth = 1.3 según la hoja de datos del BSS138, entonces, ¿cómo funciona exactamente esto y qué papel juega el diodo aquí? Sé que estos diodos tienen una caída de voltaje de aproximadamente 1 V, pero no entiendo la "cadena de eventos" en este circuito. ¡¡¡Gracias!!!
También me gustaría saber si esta es la forma correcta de simular este circuito y hacer que Rload simule una entrada FPGA.
Si yo fuera usted, consideraría hacer esto como una pregunta adecuada para que obtenga una respuesta más completa de más personas. Un poco ocupado en este momento.