Contactos

Aplicación solar usb a ttl d.  Convertidor (convertidor) de interfaces Ethernet a TTL. ¿Cuál es la diferencia entre UART y RS232?

Tuvimos que mostrar datos de los paquetes GGA y VTG en la pantalla LCD, lo cual no es muy conveniente dado el tamaño máximo de paquete de 80 caracteres.

Durante la depuración, tuvimos que mostrar datos de los paquetes GGA y VTG en la pantalla LCD, lo cual no es muy conveniente dado el tamaño máximo del paquete de 80 caracteres.

Esta desgracia se debió al hecho de que tenía algo incómodo de usar, en el que siempre había algo que hacía cortocircuito y amenazaba el precioso puerto COM de mi PC. Quería hacer uno nuevo, hermoso, en un bonito estuche y con un hermoso cableado :) Se grabó una bufanda, cuyo cableado se puede descargar al final de la nota.

A continuación, se instaló una placa de ST Microelectronics (un análogo completo), pero un par de hryvnia más barata. Por supuesto, respeto a Maxim, pero no me gusta en absoluto pagar de más por cosas triviales. Los condensadores del arnés se configuraron en tantalio de 1 µF 16 V, tipo A.


Luego todo esto fue metido en un edificio que había estado inactivo desde que tenía 13 años. Protegí los cables para que no se arrancaran con un simple nudo. Se tomó prestado de un mouse viejo un cable blando con un conector para el puerto COM.


Se imprimió y pegó una pegatina con la designación del cableado en la carcasa, para no recordar constantemente dónde está el más y dónde está el menos :). Una capa de cinta adhesiva lo protege de la abrasión. Ahora el convertidor ha adquirido cierta usabilidad y se ha vuelto cómodo de usar. Que tenga un buen día.

Al desarrollar varios tipos de dispositivos electrónicos que utilizan microcontroladores, suele resultar útil poder conectarlos a una computadora personal a través de un puerto serie. Sin embargo, esto no se puede hacer directamente, ya que según el estándar RS-232, la señal se transmite en niveles de -3..-15 V (lógico<1>) y +3..+15V (lógico<0>). Para convertir niveles RS-232 a niveles lógicos TTL estándar, generalmente se utilizan chips convertidores especiales. Sin embargo, no siempre tiene sentido incluir un convertidor de nivel en el circuito del dispositivo que se está diseñando, ya que a menudo sucede que la comunicación con una computadora es necesaria solo en la etapa de fabricación y depuración del dispositivo, y para el producto final allí. no es necesario. Una solución lógica en esta situación sería fabricar un convertidor de nivel RS-232 a TTL por separado; a continuación se muestra un diagrama de una de las posibles opciones:

La base del convertidor propuesto es el chip convertidor de nivel MAX232A de Maxim (U1), que también tiene muchos análogos de otros fabricantes (Analog Devices, LG, etc.). Este microcircuito está diseñado para un voltaje de suministro de 5 V y tiene un duplicador de voltaje incorporado y un inversor en capacitores conmutados para producir voltajes de +10 V necesarios para trabajar con señales RS-232. Para operar el microcircuito se requieren 4 condensadores externos (C1, C2, C3, C4) con una capacidad de 0,1 μF, que se utilizan en el convertidor de voltaje. Además, para simplificar el uso de este convertidor, se alimenta directamente desde el puerto serie, eliminando la necesidad de fuentes de alimentación externas. La tensión de alimentación de 5 V es generada por un regulador de tensión lineal de baja potencia LM78L05 (U2), cuya entrada está conectada al condensador de almacenamiento C6. El condensador C6 se carga a través de un diodo de la señal del terminal de datos listo (DTR, cuarto pin del conector RS-232 de 9 pines). El diodo D1 puede ser de cualquier tipo (el autor utilizó un diodo en un paquete de montaje en superficie, soldado de una placa base quemada). Para el funcionamiento normal de dicho convertidor de potencia, se requiere que la señal DTR sea cero lógico la mayor parte del tiempo. Esto lo debe proporcionar el programa de terminal o el programa de usuario utilizado.

El uso del convertidor descrito anteriormente resulta conveniente en los casos en que durante el funcionamiento del dispositivo no se requiere la capacidad de comunicarse con una computadora, pero sí se necesita en la etapa de depuración o fabricación del dispositivo. Un ejemplo típico de esto sería, por ejemplo, un dispositivo con memoria flash o EEPROM que requiere una inicialización inicial. Además, suele ser muy conveniente durante el proceso de desarrollo enviar varios tipos de información de depuración al puerto serie, lo que a veces le permite prescindir de emuladores de hardware.

Lista de radioelementos

Designación Tipo Denominación Cantidad NotaComerciomi bloc de notas
U1 Interfaz IC RS-232

MAX232A

1 al bloc de notas
U2 Regulador lineal

LM78L05A

1 al bloc de notas
D1 Diodo 1 al bloc de notas
C1-C5 Condensador0,1 µF5 al bloc de notas
C6 Capacitor electrolítico4,7 µF1

Convertidor USB-UART a CH340G:
finalizándolo a RS232TTL, probando, comparando

abril 2017

1. ¿Qué es TTL y qué tiene que ver el USB con él?

De alguna manera me llamó la atención un producto muy económico en Ali. Convertidor USB-UART. Al principio no estaba muy seguro de qué era realmente esto. El nombre del producto en inglés se veía así: “Módulo UART convertidor USB a TTL CH340G CH340 3.3V 5V interruptor”. La mención de UART y el chip CH340G pareció disipar dudas, pero no me gustó la frase “USB a TTL”, que también era visible en la foto del módulo, en su parte inferior. El hecho es que esta frase no tiene sentido, lo que significa que abre un amplio campo para la libre interpretación.

En teoría, traducida al ruso la frase " USB a TTL" debería significar "convertir USB a TTL". Nadie necesita explicar qué es USB ahora, pero no muchos han oído hablar de TTL. Así que vayamos a la historia y veamos ¿Qué es TTL?.

Es interesante que tanto Google como Yandex, cuando se les preguntó "¿Qué es TTL", devolvieron enlaces sobre TTL de un área completamente diferente? Entonces, ¿qué es esto en relación con la electrónica? La abreviatura TTL en ruso no se diferencia de la versión en inglés y significa lógica transistor-transistor (TTL). Inicialmente, este concepto implicaba las características de la estructura interna de algunos microcircuitos digitales, un conjunto de soluciones técnicas, incluidas las de circuitos y las tecnológicas. Entre otras cosas, el estándar TTL también especifica un método codificación de señal lógica. Por ejemplo, se codificó un cero lógico con un voltaje cercano al cable de alimentación común. Además, el cable común se conectó al negativo de la fuente de alimentación y se tomó como potencial cero: "tierra". Y la unidad lógica estaba codificada con un voltaje cercano al voltaje de suministro de +5 V. La tensión de alimentación de +5 V también se ha convertido en una parte integral del estándar TTL.

Cabe señalar que los microcircuitos TTL alguna vez se generalizaron mucho. En la Unión Soviética, quizás la más famosa fue la serie K155. El uso generalizado de estos y otros microcircuitos similares obligó a los desarrolladores de hardware, por motivos de compatibilidad, a adherirse a los mismos métodos de codificación de señales lógicas cero y lógica uno que proporcionaba el estándar TTL.

Pero nada se detiene. Los chips TTL construidos con transistores bipolares pronto quedaron obsoletos. Eran muy inferiores a los microcircuitos más modernos tanto en rendimiento como en consumo de energía. Comenzaron a ser reemplazados por otras familias de microcircuitos basados ​​​​en estructuras MIS (metal-dieléctrico-semiconductor) o, más simplemente, en transistores de efecto de campo. Pero el estándar de codificación de señales no iba a quedar obsoleto, por lo que muchos microcircuitos nuevos, incluso si no estaban directamente relacionados con TTL, seguían siendo compatibles con TTL. Los propios chips TTL se convirtieron gradualmente en parte de la historia (aunque todavía se utilizan en diseños de aficionados hasta el día de hoy), y su nombre común, la abreviatura TTL, adquirió un significado ligeramente diferente. Ahora TTL debe interpretarse como "un estándar de niveles de voltaje para codificar ceros y unos lógicos, utilizado en chips TTL".

¿Y qué, teniendo en cuenta lo anterior, pueden significar las palabras “USB a TTL”? Creo que ahora está claro por qué esta frase no tiene sentido.

2. Convertidor de interfaz en chip CH340G

Terminé pidiendo este producto. Me costó 44,30 rublos con gastos de envío incluidos, es decir, casi nada. Pero éste no es el caso cuando lo barato significa malo. Cuando se conectó, fue identificado inmediatamente en el sistema (Windows 8.1). No hubo problemas con los conductores. Anteriormente, ya había conectado otro convertidor al CH340 (el que tiene forma de cable adaptador USB-COM), por lo que el controlador ya estaba instalado. Debo decir que la última vez no fue necesario buscar un controlador e instalarlo manualmente, todo salió automáticamente. Ahora el controlador previamente instalado reconoció inmediatamente el nuevo dispositivo.

Como era de esperar, resultó ser un conversor USB-UART, como los que compré antes. De las señales útiles, aquí sólo se envían TXD y RXD al conector del módulo. Por supuesto, esto no me convenía. Sabiendo que el microcircuito CH340G asegura la formación de un conjunto completo* Señales RS232, Compré este módulo con la expectativa de mejorarlo aún más. Por cierto, un precio tan bajo se debe en gran medida a la "inferioridad" de este módulo. Con sólo señales TXD y RXD, sus capacidades son muy limitadas. Pero con un conjunto completo de señales RS232, las capacidades del módulo y el alcance de su aplicación se vuelven verdaderamente inagotables (no es necesario utilizar las entradas y salidas RS232 estrictamente para el propósito previsto). Un puerto de este tipo puede incluso considerarse de bajo bit. Puerto paralelo con configuración arbitraria de señales en tres salidas y sondeo arbitrario del estado de cuatro entradas. En este sitio ya puedes ver diferentes opciones para usar un módulo similar. Pero un convertidor con un conjunto completo de señales suele costar un orden de magnitud más. ¿Por qué pagar de más? Para aquellos que están familiarizados con un soldador, la solución óptima es comprar un "producto semiacabado" y llevarlo a un estado completo.

* Por conjunto “completo” de señales RS232 nos referimos a señales Puerto COM, aunque el estándar RS232 proporciona muchas otras señales que no se utilizan en COM.

Agregaré que el módulo tiene tres LED (todos rojos), uno de los cuales indica el suministro de voltaje desde USB, y los otros dos muestran el estado de las señales TXD y RXD (se iluminan en el cero lógico, es decir, en baja tensión relativa a GND).

3. Actualización del módulo UART a un RS232TTL completo

ConclusiónObjetivo
2 salida TXD
3 entrada RXD
9 entrada CTS
10 entrada DSR
11 entrada RI
12 entrada DCD
13 salida DTR
14 salida RTS
Pestaña. 1. Numeración de pines
chips CH340G
con señales RS232

En general, toda la modificación consistió únicamente en soldar a las patas correspondientes del microcircuito. Para ello, primero fue necesario cortar una ventana en la carcasa termorretráctil. Coincidencia de pines chips CH340G Y Señales RS232 ver tabla Tab.1.

Como puede verse en la tabla, todas las señales excepto TXD y RXD están en un lado del chip, pero TXD y RXD ya están conectadas al conector, por lo que fue necesario soldar cables adicionales solo en un lado.

4. Prueba del convertidor en el chip CH340G

Para asegurarme de que el módulo funciona correctamente y que realmente proporciona todas las señales inherentes al puerto COM, lo probé minuciosamente. Todas las pruebas pasaron, como dicen, sin problemas, de lo que concluyo que este convertidor de interfaz puede recomendarse para su uso en cualquier dispositivo y diseño que requiera conexión a una computadora a través de RS232TTL. Incluso para su uso como programador de microcontroladores, como se describe en el artículo.

Las pruebas se realizaron utilizando varios scripts para el programa Perpetuum M. También puedes probar tu convertidor. Descargar (están empaquetados en un archivo) y por separado. Recuerde verificar y cambiar el número de puerto en los scripts si es necesario; de lo contrario, no funcionarán. Puede averiguar el número de puerto en su caso a través del Administrador de dispositivos de Windows. Al comienzo de cada script (y se pueden abrir con un editor de texto, como el Bloc de notas), verá la línea "PortName="COM3";". En lugar del número 3, pon el número que necesitas. Por ejemplo, si, al conectar un módulo, el dispositivo COM4 aparece en el administrador de dispositivos, entonces en cada escenario deberá especificar "COM4" en lugar de "COM3".

Ahora les contaré más sobre el proceso de prueba. Primero instalé un puente entre los pines del conector. TXD Y RXD para que los datos del transmisor lleguen inmediatamente al receptor. Por lo tanto, hice un "bucle invertido" en el puerto para que pudiera transmitir datos a sí mismo. Esto le permite probar tanto el transmisor como el receptor al mismo tiempo sin conectarse a otro puerto. Luego ejecuté el script "Probar un puerto COM descargando un archivo a través de él" y seleccioné un archivo aleatorio de 653 KB de tamaño. El archivo se copió correctamente. El archivo copiado resultó ser absolutamente idéntico al original, lo que indica que el receptor y el transmisor del módulo UART están funcionando correctamente.

A continuación, ejecuté secuencialmente los scripts “Prueba de salida del puerto COM TXD”, “Prueba de salida del puerto COM DTR” y “Prueba de salida del puerto COM RTS”, habiendo conectado previamente un voltímetro a la salida correspondiente para cada caso. Al ingresar ceros y unos en el cuadro de diálogo del programa, verifiqué que se mostraban correctamente en las salidas del puerto. Resultó que la salida TXD muestra niveles lógicos sin inversión, es decir, cuando se emite cero, aparece un voltaje bajo, cuando se emite uno, aparece un voltaje alto y las salidas DTR y RTS funcionan con inversión. Esto debe tenerse en cuenta al utilizar este módulo en desarrollo.

Luego ejecuté el script "Prueba de entrada del puerto COM", que muestra en tiempo real el estado de cuatro entradas de puerto a la vez: CTS, DSR, RI, DCD. Usando una resistencia de 5.6K, comencé a conectar cada una de las entradas una por una ya sea al cable común (GND) o a la línea de alimentación de +5V. Resultó lo siguiente. Todas las entradas están operativas; cuando son consultadas por el software, todas producen un estado invertido. Todos tienen un "pull-up" a la tensión de alimentación, es decir, la entrada "colgante" tiene un nivel lógico y, en consecuencia, debido a la inversión, se lee en el software como "0". Cuando la entrada se conecta a través de una resistencia de 5,6 K al pin del conector GND, cada entrada entra fácilmente en un estado cero lógico (leído en el software como "1"), lo que significa que la resistencia del "pull-up" incorporado es al menos un orden de magnitud superior a 5,6K. Tenga en cuenta que en los módulos basados ​​​​en el chip PL2303, es mucho más difícil "romper" el "pull-up" incorporado debido a su baja resistencia.

Resumamos: además de la posibilidad de transmisión de datos en serie vía UART, disponemos de tres salidas controladas de forma independiente ( TXD, DTR, RTS), de las cuales una es directa (TXD) y dos son inversas, así como cuatro entradas inversas consultadas mediante programación con un "pull-up" al voltaje de suministro ( CTS, DSR, RI, DCD). Si planea usar UART, entonces solo habrá dos salidas independientes, ya que la salida TXD es una señal del transmisor UART. Esto no afecta a las entradas: seguirán siendo cuatro.

Es necesario mencionar una posibilidad más, que supuestamente permite cambiar el nivel de la unidad lógica en las salidas moviendo el jumper, dependiendo del voltaje con el que se alimenten los microcircuitos conectados a este módulo: 5V o 3,3V. Es decir, se está resolviendo la cuestión de la coordinación de niveles. Escribo sobre este “truco” con cierto desdén, porque se implementa de alguna manera extraña y no inspira confianza. Sin embargo, no es particularmente necesario porque acordar niveles entre 5V y 3,3V es fácil de otras maneras. Y aquí está la cosa. El módulo tiene tres pines: 5V, VCC y 3,3V. Con un jumper (incluso está incluido en el kit) puedes cerrar 5V y VCC, o VCC y 3.3V. O no puedes instalarlo en absoluto, ya que en ausencia total de un jumper todo funciona igual que si estuviera instalado entre VCC y 3.3V. El voltaje en el pin de 5V corresponde al voltaje del cable de +5V del puerto USB. El pin VCC tiene un voltaje de aproximadamente 3,8 V cuando no hay puente, y el pin de 3,3 V tiene un voltaje de aproximadamente 3,2 V. Si el puente está instalado entre 5V y VCC, entonces, en principio, no surgen preguntas: los niveles TTL funcionan, es decir, una unidad lógica alcanza los cinco voltios. Pero si instala un puente entre VCC y 3.3V, entonces surgen preguntas, porque el voltaje en el pin de 3.3V aumenta a 3.8V (como estaba en VCC antes de instalar el puente), y en las salidas del puerto la unidad lógica alcanza 3.6 ...3,8 V, que es demasiado para 3,3 V. Sin instalar un puente en las salidas, el nivel de unidad también alcanza 3,6...3,8V. Quizás nada se queme, pero centrarse en los valores máximos permitidos no es el mejor factor para la confiabilidad.

5. Ventajas y desventajas del convertidor CH340G

De las deficiencias, noté solo dos pequeñas cosas que pueden ignorarse con un enfoque competente. Uno de ellos es la coordinación no del todo exitosa con el estándar 3,3V. Pero si no utiliza alimentación de 3,3 V, o lo hace, pero la tarea de igualar el nivel no es un problema para usted, entonces todo está en orden. La segunda desventaja es que todos los LED de este módulo son del mismo color: rojo, lo que te obliga a recordar su ubicación si quieres navegar por ellos. Pero en la práctica real, la necesidad de LED no es tan grande y, si aún los necesita, puede reemplazarlos por los suyos.

Definitivamente hay más ventajas. En primer lugar, me alegra que no haya problemas con los conductores. Como dije anteriormente, para microcircuitos. Controladores CH340 para Windows se instalan automáticamente, incluidas las últimas versiones del sistema operativo. Pero con los convertidores en el chip PL2303 todo es mucho más complicado. No existen controladores para microcircuitos antiguos para las nuevas versiones de Windows. Y en el pasado se liberó un mar de microcircuitos antiguos. Si no me equivoco, esta fue la razón por la cual los desarrolladores no soportaron microcircuitos más antiguos. Parece que hubo algún tipo de problema con los derechos de autor: había muchos microcircuitos falsificados en el mercado. Y luego los desarrolladores, sin cambiar nada fundamentalmente en el nuevo chip, solo cambiaron la forma en que responde a la solicitud del conductor. En términos generales, a la pregunta "¿Quién eres?", el nuevo microcircuito comenzó a responder: "Soy Vasya-plus". Y si el conductor recibe la respuesta "Soy Vasya", entonces le dice a este microcircuito: "Atraviesa el bosque, Vasya sin plus". Es decir, desde un punto de vista puramente técnico, el nuevo controlador podría funcionar fácilmente con el microcircuito antiguo. Hasta donde yo sé, incluso hay formas de evitar este flagelo: o el nuevo controlador se ve obligado de alguna manera a funcionar con el microcircuito antiguo, o el controlador antiguo está "atornillado" al nuevo sistema operativo.

Otra ventaja de este módulo es que el espacio entre pines del chip CH340G es mucho mayor, por lo que soldar es mucho más fácil. Este microcircuito tiene solo 16 pines, entre los cuales básicamente solo se encuentran los más necesarios, a diferencia del PL2303, que, aparentemente, tiene pines para todas las ocasiones.


En mi opinión, una ventaja también puede considerarse la "pull-up" de alta resistencia de las entradas, que reduce la corriente cero lógica y, por lo tanto, impone menos exigencias a la fuente de señal. Si los requisitos de protección contra interferencias son muy altos, entonces puede organizar fácilmente un "pull-up" adicional con una resistencia externa. Cuando utilice este módulo en una función (consulte la figura de la derecha), puede instalar todas las resistencias con la misma resistencia (1K...4,3K). Es decir, no es necesario reducir mucho la resistencia en la entrada del CTS.

También agregaré que en el pasado realicé pruebas comparativas de dos convertidores en microcircuitos. PL2303 Y CH340. El CH340 definitivamente ganó: en modos extremos era mucho más difícil experimentar fallas. Aunque era un convertidor de otro diseño (cable adaptador), me parece que se puede esperar que otros modelos de convertidores de la familia CH340 no sean menos fiables.

Si tiene preguntas o comentarios sobre este artículo, escriba o envíe un correo electrónico a mail.ru (buzón jkit).

De la correspondencia con un visitante del sitio.

12/05/2017 Invitado:
Hola Evgeniy.
.htm
Tengo el mismo convertidor (uno a uno).
El caso es que necesito actualizar el equipo FlySky i6 a 10 canales. Inicialmente, el puente está en la posición "VCC-3V3". ¿Entendí bien que hay que dejarlo como está? Lo siento, pero no lo sé, por eso hago esta pregunta. No quiero quemar nada.

14.05.2017
¡Hola Vladimir!
La respuesta a tu pregunta depende de las características técnicas del equipo al que conectas el módulo CH340G. No he encontrado este equipo, así que no puedo decir nada con seguridad. El enlace que proporcionaste muestra un error 404, pero incluso si el enlace funcionara, es poco probable que hubiera encontrado el tiempo para comprender ese equipo en detalle. Pruebe VCC-3V3 primero. No creo que pueda empeorar. Por si acaso, coloque resistencias de 1 kOhm en cada cable de señal (esto se debe al hecho de que en realidad no son 3,3 V, sino más).

14/05/2017 Invitado:
Hola Evgeniy.
¡Gracias por el consejo! De hecho, es mejor empezar poco a poco.
¿Y 1 kOhm se basa en la corriente que tenía? (Simplemente no sé qué corrientes fluyen a través del cable de señal y no pude encontrarlas por ningún lado)

17.05.2017
¡Hola Vladimir!
La pregunta está formulada incorrectamente. ¿Por qué necesitas saber la corriente? Tomé 1 kOhm "a simple vista", basándose en el hecho de que si en algún lugar, aunque sea de alguna manera, se aplican accidentalmente 5 V a la resistencia (y, en teoría, no debería haber más cerca), entonces la corriente será de 5 mA. , lo que no debería tener consecuencias negativas.

17/05/2017 Invitado:
Hola Evgeniy.
Estaba hablando de actualidad, porque... si está cerca de cero, entonces no habrá caída de voltaje en la resistencia y la salida será la misma de 3,6 V en lugar de 3,3 V. Pero entiendo el significado de su reaseguro, gracias por la nota.

19.05.2017
¡Hola Vladimir!
Hay elementos completamente no lineales. Y la cuestión no es que 0,3 V adicionales puedan provocar que algo se rompa con el voltaje, sino precisamente que incluso un pequeño aumento de voltaje puede causar repentinamente un aumento rápido y no lineal de la corriente. Por ejemplo, pueden abrirse diodos protectores en las entradas, etc. La resistencia añade linealidad al circuito y evita tales desarrollos. Y las corrientes normales suelen ser pequeñas (aunque no siempre), por lo que una resistencia no debería interferir. La excepción es el pull-up de baja resistencia en la entrada. Entonces la resistencia no te permitirá "superarla" y nada funcionará. Esto se puede detectar con un osciloscopio o incluso con un voltímetro (en modo estático).

19/05/2017 Invitado:
Hola Evgeniy.
Muchas gracias por la explicación detallada. Ahora al menos entiendo el mecanismo de dicha protección. De lo contrario, pensé que los chinos podrían haber aumentado deliberadamente el voltaje teniendo en cuenta la caída cuando se encendió la carga. Ahora está claro que esto es sólo un error.

20.05.2017
¡Hola Vladimir!
Para evitar que el voltaje "caiga" al conectar una carga, aumente la capacidad de carga de la salida. Para este propósito no se agrega voltaje “extra”. Por supuesto, 3,6 V en lugar de 3,3 V no es tanto, y es poco probable que algo se rompa por ello. Pero suministrar 3,8 V a la entrada de un microcircuito alimentado por una fuente de 3,3 V es peligroso, ya que 0,5 V adicionales ya son bastante capaces de abrir el diodo protector en la entrada, y si la capacidad de carga de la salida es alta, puede dañar la entrada conectada a él. Esto lo impide una resistencia de "seguridad".

El uso de materiales de este sitio en publicaciones está permitido solo si estos materiales van acompañados de enlaces a la fuente: el sitio del sitio que indica al autor: E.A. Los derechos de autor están protegidos por las leyes de la Federación de Rusia. Evgueni Kotov. 2017

Los microcontroladores en Arduino (ATmega328, 168, 2560) utilizan, entre otras interfaces, una interfaz serie basada en hardware (UART). La MCU ATmega2560 (Arduino Mega) implementa cuatro UART a la vez. La interfaz utiliza dos cables: RX (recepción) y TX (transmisión), donde la señal digital codifica los valores de los bits "0" y "1" con el voltaje en el cable. El valor “0” corresponde a 0V, y el valor “1” corresponde al voltaje de funcionamiento del circuito integrado (5V o 3,3V, según el modelo y modo de funcionamiento del MK). Este tipo de codificación también se denomina lógica transistor-transistor (TTL), porque el voltaje en el cable afecta directamente el estado (abierto/cerrado) de los transistores que proporcionan la recepción y transmisión de la señal digital.

El puerto serie de la computadora (puerto COM), cada vez más raro en los modelos modernos de computadoras compactas, funciona según el antiguo estándar de telecomunicaciones RS232, donde la codificación de la señal es diferente: el valor “0” se codifica con un voltaje de +3V a +25V, y “1” - voltaje negativo de -3V a -25V. Los voltajes de +13V y -13V generalmente se encuentran en los puertos COM de las computadoras personales.

Una gran diferencia de voltaje hace que la conexión RS232 sea más resistente a las interferencias; sin embargo, los dispositivos digitales modernos suelen utilizar un puerto serie compatible con TTL o USB, una interfaz mucho más moderna y de alta velocidad.

A modo de comparación, la siguiente figura muestra las señales serie TTL y RS 232 tomadas al transmitir el valor de un byte.

Para convertir una señal RS232 a TTL y viceversa, es necesario invertirla (aunque esto se puede hacer mediante software) y convertir el voltaje. Normalmente, para esto se utilizan chips como MAX232. En ocasiones utilizan circuitos caseros simplificados que proporcionan inversión de señal y conversión de voltaje o recurren a soluciones de software y hardware (inversión de software, cambio de voltaje de hardware).

En el caso de Arduino (Uno, Mega, etc.) se utiliza un controlador serie USB-TTL, que garantiza el funcionamiento con el MK a través de una interfaz serie compatible con TTL. En los modelos más antiguos, se utilizó el chip FTDI FT232 para esto, en los nuevos, ATmega8U o ATmega16U. Los pines de la interfaz serie MK también están disponibles para conexión directa. Para Uno, estos son los pines D0, D1 y el modelo Mega tiene varias interfaces en serie a la vez. No puede conectar un puerto RS232 a estos pines; no podrá funcionar correctamente debido a un tipo diferente de codificación y el alto voltaje puede dañar el MK.

Para conectarse a un puerto serie compatible con TTL desde una computadora, es conveniente utilizar un adaptador serie USB-TTL. Sin embargo, los adaptadores serie USB-TTL de uso general se venden sólo en tiendas especializadas y, a menudo, a un precio excesivamente elevado. Al mismo tiempo, los adaptadores USB-RS232 son mucho más populares (y más baratos). Tras un examen más detenido, cualquier adaptador USB-RS232 contiene dos componentes principales: microcircuitos del adaptador serie USB-TTL y convertidor serie RS232-TTL.

Encontré un adaptador USB-RS232, cuyo circuito estaba oculto en una carcasa del conector DB9 que se desmontaba fácilmente (a veces la carcasa está hecha de forma moldeada y es más difícil llegar al circuito). El adaptador resultó estar construido sobre los populares chips Prolific PL2303 (adaptador serie USB-TTL) y Zywyn ZT213 (adaptador RS232-TTL). Después de mirar la especificación PL2303, descubrí que necesitaba los pines 1 (TX) y 5 (RX), a los que soldé los cables sin cambiar el circuito de ninguna manera (por lo que la parte RS232 permaneció operativa). Tomé tierra del quinto pin del DB9 para no tocar el séptimo pin del microcircuito.

El resultado es un adaptador serie USB-TTL económico y alegre. En la captura de pantalla: el monitor serie de Arduino IDE está conectado a través de USB y realterm está conectado directamente a D0, D1 a través de un adaptador serie USB-TTL.

He oído que muchos cables de datos para teléfonos móviles también contienen controladores serie USB-TTL, aunque cada vez más modelos modernos se conectan directamente a la interfaz USB, sin necesidad de adaptadores especiales. Muchos microcontroladores están equipados con una interfaz USB, en particular ATmega8U y ATmega16U, que se utilizan en Arduino como controladores serie USB-TTL, proporcionando acceso al ATmega328, que no tiene interfaz USB.

PL2303HX es un pequeño convertidor USB-Serial con un transceptor RS232 incorporado (interfaz UART). El microcircuito crea un puerto COM virtual en la computadora a través del cual puede actualizar microcontroladores, así como restaurar enrutadores y decodificadores.


Especificaciones técnicas

Tensión de alimentación: 5V (desde USB)
Interfaz 1: USB
Interfaz 2: TTL (0 a 5, Rx y Tx)
Tensión de salida, V: 3,3 y 5 (salidas separadas)
Dimensiones: 50 mm x 15 mm x 8 mm
Soporte de sistema operativo: Windows XP / 7 / 8 / 8.1 / 10.

Información general sobre PL2303HX

El chip principal del módulo es PL2303HX, que hasta 2012 fue fabricado por Prolific Technology. Básicamente, se trata de un convertidor de interfaz USB a UART con niveles lógicos TTL, CMOS (0 V ... +5 V). En un lado hay un conector USB para conectar a una computadora, y en el otro, un conector UART de cinco pines (RX, TX y pines de alimentación para +5V y +3.3V), para protección contra cortocircuitos, el módulo Se coloca en un tubo termorretráctil transparente, el diagrama del circuito PL2303HX se muestra en la siguiente imagen.

Propósito de los LED:
P (Encendido) - encendido (encendido constantemente)
R (RxD) - datos recibidos
T (TxD) - datos transmitidos

Del esquema eléctrico se puede observar que la alimentación a la salida de +5V proviene directamente del puerto USB, sin elementos de protección, y la alimentación a la salida de +3.3V proviene del estabilizador interno PL-2303, el cual puede soportar una corriente de hasta 150 mA. Los controladores oficiales de Prolific para Windows 7, 8 y 10 no funcionan porque... Comprueba la originalidad del chip PL-2303, pero es posible arreglar todo mirando esto.

Pruebas

Para realizar pruebas puedes utilizar " Terminal1_9_b", puedes descargar este programa en este artículo.

Instale el controlador
vamos a lanzar "Terminal1_9_b" en nombre del administrador.
En la esquina superior, seleccione " Puerto COM"(se puede ver en el administrador de dispositivos) y haga clic en " Conectar»

En la parte inferior, ingrese un valor arbitrario y haga clic en " -> Enviar", el LED TxD se iluminará brevemente cada vez que presione.
Conecte los pines TxD y RxD entre sí y presione "->Enviar", dos LED, TxD y RxD, se iluminarán brevemente con cada pulsación y el comando enviado también se mostrará en el programa.
El voltaje de 3,3 V y 5 V se puede comprobar con un multímetro convencional.

Enlaces
Documentación PL2303HX
Conductor para



¿Te gustó el artículo? Compártelo