Enlace serie entre dispositivos de 3,3 V

Tengo un RPi y un controlador FRDM-KL25z de escala libre que hablarán sobre el protocolo en serie. Estoy usando la biblioteca pyserial en el pi:

import serial
ser = serial.Serial('/dev/ttyAMA0', 9600)
ser.write('hi FRDM')

y usar el protocolo serial de la biblioteca mbed generará interrupciones para procesar los datos del Pi.

https://developer.mbed.org/users/mbed_official/code/mbed/docs/4fc01daae5a5/classmbed_1_1SerialBase.html#ae67fb9b5a2ee2f4e98a39cdab10ed090

Mi pregunta es, si tengo dos dispositivos que hablan sobre el mismo protocolo con el mismo potencial y muy cerca, ¿necesito un convertidor de nivel lógico o algún tipo de chip UART?

Creo que no, pero soy consciente de que RS232 es un protocolo de +-12 V, por lo que me gustaría asegurarme de que esta suposición es correcta.

Si está usando /dev/ttyACM0, entonces está usando CDC/ACM, no RS232.
¿Eso significa que este código usa uno de los puertos USB? Planeo usar los pines GPIO 8 y 10.
Sí, ese código está usando USB. Para el UART de hardware, usaría /dev/ttyAMA0 en su lugar.

Respuestas (1)

Si ambos comparten los mismos niveles lógicos (0V-3.3V) y la misma tierra, no debería ser un problema. Pero entonces no estás usando RS232, solo UART. El puente Serial en los Arduinos funciona de la misma manera. El chip FTDI usa 0V-5V y el ATmega usa 0V-5V.

Golpeaste el problema en la cabeza. Si un dispositivo usa niveles lógicos CMOS (3,3 V) y el otro usa niveles lógicos TTL (5 V), los umbrales lógicos son diferentes. Un nivel lógico alto es > ~60 % del voltaje de trabajo (2 V para lógica de 3,3 V y 3 V para lógica de 5 V). Para operar correctamente, necesita un cambiador de nivel en cualquier lado, como un MAX3232, o un búfer que sea tolerante con cualquiera de las familias lógicas.
@cowboydan ¿Te refieres a mí por 'él'? Ambos dispositivos son de 3,3 V, así que creo que David ha dicho que no creo que necesite ningún cambio de nivel.
@cowboydan, en una palabra, ¡NO! Un dispositivo de bomba de carga como un max3232 es una sugerencia absurda para la traducción de 3.3-5v. Y no haga suposiciones sobre el voltaje de umbral sin verificar las hojas de datos: algunos dispositivos de 5v tienen un VIH más bajo que algunos dispositivos de 3.3v.
@ChrisStratton - bastante bien. Después de volver a leer mi comentario, el MAX3232 no parece tener sentido aquí.