{"id":8051,"date":"2026-05-20T02:56:02","date_gmt":"2026-05-20T02:56:02","guid":{"rendered":"https:\/\/rogerbit.com\/wprb\/?p=8051"},"modified":"2026-05-20T02:57:09","modified_gmt":"2026-05-20T02:57:09","slug":"rs232","status":"publish","type":"post","link":"https:\/\/rogerbit.com\/wprb\/2026\/05\/rs232\/","title":{"rendered":"RS-232 &#038; UART El protocolo serial que no muere"},"content":{"rendered":"<p><!-- BLOQUE HTML PERSONALIZADO PARA GUTENBERG - RS-232 & UART --><br \/>\n<!-- Copi\u00e1 todo este contenido en un bloque \"HTML personalizado\" de Gutenberg --><\/p>\n<div style=\"background: #0a0e13; color: #e8eaf0; font-family: Georgia,serif; font-size: 17px; line-height: 1.75; max-width: 100%; overflow-x: hidden; box-sizing: border-box; padding: 0; margin: 0;\">\n<p>&nbsp;<\/p>\n<p><!-- ===== HERO ===== --><\/p>\n<div style=\"background: linear-gradient(135deg,#0a0e13 0%,#081420 45%,#06100e 100%); border-bottom: 1px solid #1e2a38; padding: 60px 24px 48px; position: relative; overflow: hidden;\">\n<div style=\"max-width: 860px; margin: 0 auto; position: relative; z-index: 1;\">\n<div style=\"display: inline-flex; align-items: center; gap: 8px; background: rgba(0,188,212,0.1); border: 1px solid rgba(0,188,212,0.3); color: #00bcd4; font-family: 'JetBrains Mono',monospace; font-size: 11px; font-weight: bold; letter-spacing: 2px; text-transform: uppercase; padding: 5px 14px; border-radius: 4px; margin-bottom: 24px;\">\u25c6 Gu\u00eda T\u00e9cnica \u00b7 Protocolos de Comunicaci\u00f3n<\/div>\n<h1 style=\"font-family: 'Syne',sans-serif; font-size: 48px; font-weight: 800; line-height: 1.1; color: #fff; margin: 0 0 20px; letter-spacing: -1px;\"><span style=\"color: #00bcd4;\">RS-232<\/span> &amp; <span style=\"color: #e05a00;\">UART<\/span><br \/>\nEl protocolo serial que no muere<\/h1>\n<p style=\"font-size: 18px; color: #6b7a8d; font-style: italic; margin: 0 0 32px; max-width: 680px; font-family: 'Newsreader',Georgia,serif;\">Nacido en los a\u00f1os 60, vigente en 2025. Historia completa del est\u00e1ndar serial que conect\u00f3 al mundo antes de que existiera el USB \u2014 y que hoy vive dentro de cada microcontrolador del planeta.<\/p>\n<div style=\"display: flex; gap: 20px; flex-wrap: wrap; font-family: 'JetBrains Mono',monospace; font-size: 12px; color: #6b7a8d;\"><span style=\"color: #00bcd4;\">\u25c6<\/span> Historia desde 1960 <span style=\"color: #00bcd4;\">\u25c6<\/span> Funcionamiento detallado <span style=\"color: #00bcd4;\">\u25c6<\/span> Variantes y mejoras <span style=\"color: #00bcd4;\">\u25c6<\/span> Uso actual 2025<\/div>\n<\/div>\n<\/div>\n<p><!-- ===== CONTENT ===== --><\/p>\n<div style=\"max-width: 860px; margin: 0 auto; padding: 48px 24px 80px;\">\n<p><!-- INTRO --><\/p>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-left: 3px solid #00bcd4; border-radius: 8px; padding: 24px 28px; margin-bottom: 40px;\">\n<p style=\"margin: 0; color: #c0cad8; font-size: 16px;\">Cuando abr\u00eds el panel de un PLC industrial, conect\u00e1s un GPS a tu Arduino, configur\u00e1s un router por consola o flashe\u00e1s un ESP32, est\u00e1s usando \u2014en alguna capa\u2014 el mismo protocolo estandarizado en 1969. El <strong style=\"color: #e8eaf0;\">RS-232<\/strong> y su contraparte l\u00f3gica, el <strong style=\"color: #e8eaf0;\">UART<\/strong>, son probablemente los protocolos de comunicaci\u00f3n serial de prop\u00f3sito general m\u00e1s longevos de la historia de la inform\u00e1tica. Esta gu\u00eda recorre su historia completa, explica c\u00f3mo funcionan a fondo, detalla todas sus variantes y analiza cu\u00e1nto se usan realmente hoy y en qu\u00e9 dispositivos.<\/p>\n<\/div>\n<p><!-- ====================================================== --><br \/>\n<!-- UART VS RS-232 --><br \/>\n<!-- ====================================================== --><\/p>\n<h2 style=\"font-family: 'Syne',sans-serif; font-size: 22px; font-weight: bold; color: #fff; margin: 0 0 20px; padding-bottom: 12px; border-bottom: 1px solid #1e2a38; display: flex; align-items: center; gap: 12px;\"><span style=\"background: rgba(0,188,212,0.1); width: 28px; height: 28px; border-radius: 6px; display: inline-flex; align-items: center; justify-content: center; font-size: 14px;\">\ud83d\udce1<\/span><br \/>\nUART vs RS-232 \u2014 No son lo mismo<\/h2>\n<p style=\"color: #a8b4c0; margin-bottom: 16px;\">La confusi\u00f3n m\u00e1s com\u00fan es usar ambos t\u00e9rminos como sin\u00f3nimos. Son cosas distintas que trabajan juntas:<\/p>\n<div style=\"display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 32px;\">\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-top: 3px solid #00bcd4; border-radius: 10px; padding: 20px 22px;\">\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 18px; font-weight: bold; color: #00bcd4; margin-bottom: 8px;\">UART<\/div>\n<div style=\"font-size: 13px; color: #6b7a8d; font-style: italic; margin-bottom: 12px;\">Universal Asynchronous Receiver\/Transmitter<\/div>\n<p style=\"font-size: 14px; color: #a8b4c0; margin: 0; line-height: 1.65;\">Es un <strong style=\"color: #e8eaf0;\">perif\u00e9rico hardware<\/strong> dentro del microcontrolador. Implementa la l\u00f3gica de comunicaci\u00f3n serial as\u00edncrona: serializa bytes, agrega start\/stop bits, maneja el baud rate. Opera con niveles l\u00f3gicos TTL (0V \/ 3.3V o 5V). Est\u00e1 en pr\u00e1cticamente el 100% de los MCUs modernos.<\/p>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-top: 3px solid #e05a00; border-radius: 10px; padding: 20px 22px;\">\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 18px; font-weight: bold; color: #e05a00; margin-bottom: 8px;\">RS-232<\/div>\n<div style=\"font-size: 13px; color: #6b7a8d; font-style: italic; margin-bottom: 12px;\">Recommended Standard 232 (EIA\/TIA)<\/div>\n<p style=\"font-size: 14px; color: #a8b4c0; margin: 0; line-height: 1.65;\">Es el <strong style=\"color: #e8eaf0;\">est\u00e1ndar el\u00e9ctrico<\/strong> que define tensiones (\u00b112V t\u00edpico), conector (DB-9 \/ DB-25), se\u00f1ales de control (RTS, CTS, DTR, DSR) y distancias m\u00e1ximas. Para conectar un UART a RS-232 se necesita un chip conversor de niveles como el MAX232.<\/p>\n<\/div>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-left: 3px solid #e05a00; border-radius: 8px; padding: 16px 20px; margin-bottom: 40px;\">\n<p style=\"margin: 0; font-size: 15px; color: #c0cad8;\"><strong style=\"color: #e05a00;\">Regla pr\u00e1ctica:<\/strong> El ESP32 tiene UART. Tu PC tiene RS-232. Para conectarlos se necesita un MAX232 (o un adaptador USB-serial como el CH340 que hace todo en uno). Son capas distintas del mismo concepto.<\/p>\n<\/div>\n<p><!-- ====================================================== --><br \/>\n<!-- HISTORIA --><br \/>\n<!-- ====================================================== --><\/p>\n<h2 style=\"font-family: 'Syne',sans-serif; font-size: 22px; font-weight: bold; color: #fff; margin: 0 0 20px; padding-bottom: 12px; border-bottom: 1px solid #1e2a38; display: flex; align-items: center; gap: 12px;\"><span style=\"background: rgba(0,188,212,0.1); width: 28px; height: 28px; border-radius: 6px; display: inline-flex; align-items: center; justify-content: center; font-size: 14px;\">\ud83d\udcdc<\/span><br \/>\nHistoria \u2014 De los teletipos a los microcontroladores<\/h2>\n<p style=\"color: #a8b4c0; margin-bottom: 24px;\">La comunicaci\u00f3n serial tiene ra\u00edces en el tel\u00e9grafo del siglo XIX, pero la historia moderna del RS-232 comienza en los laboratorios de Bell cuando la necesidad de conectar terminales a m\u00f3dems telef\u00f3nicos exig\u00eda un est\u00e1ndar com\u00fan.<\/p>\n<p><!-- TIMELINE --><\/p>\n<div style=\"position: relative; padding-left: 28px; margin-bottom: 40px;\">\n<div style=\"position: absolute; left: 7px; top: 0; bottom: 0; width: 2px; background: linear-gradient(180deg,#00bcd4,#7c6eff,transparent);\"><\/div>\n<div style=\"position: relative; margin-bottom: 28px;\">\n<div style=\"position: absolute; left: -25px; top: 5px; width: 10px; height: 10px; border-radius: 50%; background: #0a0e13; border: 2px solid #00bcd4;\"><\/div>\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 11px; color: #00bcd4; margin-bottom: 4px; letter-spacing: 1px;\">1960 \u2014 1962<\/div>\n<div style=\"font-size: 15.5px; font-weight: bold; color: #fff; margin-bottom: 6px;\">Or\u00edgenes en Bell Labs \/ EIA<\/div>\n<p style=\"font-size: 14.5px; color: #8090a0; margin: 0; line-height: 1.65;\">La Electronic Industries Alliance (EIA) inicia los trabajos para estandarizar la interfaz entre equipos terminales de datos (DTE) y equipos de comunicaci\u00f3n (DCE). El objetivo es que cualquier terminal pueda hablar con cualquier m\u00f3dem telef\u00f3nico sin importar el fabricante.<\/p>\n<\/div>\n<div style=\"position: relative; margin-bottom: 28px;\">\n<div style=\"position: absolute; left: -25px; top: 5px; width: 10px; height: 10px; border-radius: 50%; background: #0a0e13; border: 2px solid #00bcd4;\"><\/div>\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 11px; color: #00bcd4; margin-bottom: 4px; letter-spacing: 1px;\">1969<\/div>\n<div style=\"font-size: 15.5px; font-weight: bold; color: #fff; margin-bottom: 6px;\">RS-232-B: el est\u00e1ndar original<\/div>\n<p style=\"font-size: 14.5px; color: #8090a0; margin: 0; line-height: 1.65;\">Se publica la primera versi\u00f3n completa. Define niveles de tensi\u00f3n l\u00f3gica (\u00b112V t\u00edpico, \u00b125V m\u00e1ximo), conector DB-25, velocidades hasta 20 kbps y un conjunto de se\u00f1ales de control (RTS, CTS, DTR, DSR). Era el mundo de las mainframes y los m\u00f3dems de 300 baud.<\/p>\n<\/div>\n<div style=\"position: relative; margin-bottom: 28px;\">\n<div style=\"position: absolute; left: -25px; top: 5px; width: 10px; height: 10px; border-radius: 50%; background: #0a0e13; border: 2px solid #00bcd4;\"><\/div>\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 11px; color: #00bcd4; margin-bottom: 4px; letter-spacing: 1px;\">1975<\/div>\n<div style=\"font-size: 15.5px; font-weight: bold; color: #fff; margin-bottom: 6px;\">RS-232-C: la versi\u00f3n m\u00e1s difundida<\/div>\n<p style=\"font-size: 14.5px; color: #8090a0; margin: 0; line-height: 1.65;\">La revisi\u00f3n C consolida el est\u00e1ndar y se convierte en la m\u00e1s adoptada de toda la historia. Los primeros PC IBM (1981) incluir\u00e1n puerto COM basado en RS-232-C. Esta es la versi\u00f3n que la mayor\u00eda de la gente conoce como &#8220;puerto serie&#8221;.<\/p>\n<\/div>\n<div style=\"position: relative; margin-bottom: 28px;\">\n<div style=\"position: absolute; left: -25px; top: 5px; width: 10px; height: 10px; border-radius: 50%; background: #0a0e13; border: 2px solid #26c6da;\"><\/div>\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 11px; color: #26c6da; margin-bottom: 4px; letter-spacing: 1px;\">1981 \u2014 1990<\/div>\n<div style=\"font-size: 15.5px; font-weight: bold; color: #fff; margin-bottom: 6px;\">La era dorada del puerto COM<\/div>\n<p style=\"font-size: 14.5px; color: #8090a0; margin: 0; line-height: 1.65;\">El IBM PC y sus clones popularizaron el puerto COM (DB-9) en cada escritorio del planeta. Ratones seriales, m\u00f3dems externos, pl\u00f3teres, impresoras y terminales se conectaban todos por RS-232. El chip UART 8250\/16550 de National Semiconductor se volvi\u00f3 omnipresente. Se estima que en este per\u00edodo se fabricaron m\u00e1s de 500 millones de puertos RS-232.<\/p>\n<\/div>\n<div style=\"position: relative; margin-bottom: 28px;\">\n<div style=\"position: absolute; left: -25px; top: 5px; width: 10px; height: 10px; border-radius: 50%; background: #0a0e13; border: 2px solid #26c6da;\"><\/div>\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 11px; color: #26c6da; margin-bottom: 4px; letter-spacing: 1px;\">1987<\/div>\n<div style=\"font-size: 15.5px; font-weight: bold; color: #fff; margin-bottom: 6px;\">UART 16550A \u2014 el FIFO que cambi\u00f3 todo<\/div>\n<p style=\"font-size: 14.5px; color: #8090a0; margin: 0; line-height: 1.65;\">National Semiconductor introduce el 16550A con buffers FIFO de 16 bytes tanto en TX como en RX. Esto elimin\u00f3 la p\u00e9rdida de datos a altas velocidades cuando la CPU no pod\u00eda atender cada byte individual. El 16550A se convirti\u00f3 en la referencia de compatibilidad en Linux y Windows hasta el d\u00eda de hoy.<\/p>\n<\/div>\n<div style=\"position: relative; margin-bottom: 28px;\">\n<div style=\"position: absolute; left: -25px; top: 5px; width: 10px; height: 10px; border-radius: 50%; background: #0a0e13; border: 2px solid #7c6eff;\"><\/div>\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 11px; color: #7c6eff; margin-bottom: 4px; letter-spacing: 1px;\">1991<\/div>\n<div style=\"font-size: 15.5px; font-weight: bold; color: #fff; margin-bottom: 6px;\">EIA-232-D \u2014 modernizaci\u00f3n del est\u00e1ndar<\/div>\n<p style=\"font-size: 14.5px; color: #8090a0; margin: 0; line-height: 1.65;\">El est\u00e1ndar pasa a llamarse EIA-232-D. Se clarifica la definici\u00f3n de tiempos de se\u00f1al, se ajustan tolerancias y se acepta oficialmente el conector DB-9 como alternativa al DB-25 original, dado que las PCs ya lo usaban de facto desde el AT.<\/p>\n<\/div>\n<div style=\"position: relative; margin-bottom: 28px;\">\n<div style=\"position: absolute; left: -25px; top: 5px; width: 10px; height: 10px; border-radius: 50%; background: #0a0e13; border: 2px solid #7c6eff;\"><\/div>\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 11px; color: #7c6eff; margin-bottom: 4px; letter-spacing: 1px;\">1997 \u2014 2002<\/div>\n<div style=\"font-size: 15.5px; font-weight: bold; color: #fff; margin-bottom: 6px;\">La &#8220;amenaza&#8221; USB y la muerte anunciada<\/div>\n<p style=\"font-size: 14.5px; color: #8090a0; margin: 0; line-height: 1.65;\">La llegada del USB 1.0 (1996) y su adopci\u00f3n masiva con Windows 98 empieza a desplazar el puerto COM de las PCs dom\u00e9sticas. Intel y Microsoft lo excluyen del est\u00e1ndar PC 2001. Los titulares de la \u00e9poca proclamaban la muerte del puerto serie. No muri\u00f3 \u2014 simplemente cambi\u00f3 de contexto.<\/p>\n<\/div>\n<div style=\"position: relative; margin-bottom: 0;\">\n<div style=\"position: absolute; left: -25px; top: 5px; width: 10px; height: 10px; border-radius: 50%; background: #0a0e13; border: 2px solid #e05a00;\"><\/div>\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 11px; color: #e05a00; margin-bottom: 4px; letter-spacing: 1px;\">2005 \u2014 presente<\/div>\n<div style=\"font-size: 15.5px; font-weight: bold; color: #fff; margin-bottom: 6px;\">Resurrecci\u00f3n en embebidos \u2014 la era Arduino\/ESP<\/div>\n<p style=\"font-size: 14.5px; color: #8090a0; margin: 0; line-height: 1.65;\">La explosi\u00f3n de los microcontroladores y el movimiento maker devuelven al UART al primer plano. Cada Arduino, PIC, STM32, ESP8266, ESP32, Raspberry Pi y cientos de m\u00f3dulos GPS, GSM, Bluetooth y WiFi se comunican por UART. En 2025, con el IoT industrial y el edge computing, el UART tiene m\u00e1s instancias activas que en cualquier momento de su historia.<\/p>\n<\/div>\n<\/div>\n<p><!-- ====================================================== --><br \/>\n<!-- FUNCIONAMIENTO --><br \/>\n<!-- ====================================================== --><\/p>\n<h2 style=\"font-family: 'Syne',sans-serif; font-size: 22px; font-weight: bold; color: #fff; margin: 0 0 20px; padding-bottom: 12px; border-bottom: 1px solid #1e2a38; display: flex; align-items: center; gap: 12px;\"><span style=\"background: rgba(0,188,212,0.1); width: 28px; height: 28px; border-radius: 6px; display: inline-flex; align-items: center; justify-content: center; font-size: 14px;\">\u2699\ufe0f<\/span><br \/>\nC\u00f3mo funciona el UART en detalle<\/h2>\n<p style=\"color: #a8b4c0; margin-bottom: 20px;\">El UART es un protocolo <strong style=\"color: #e8eaf0;\">as\u00edncrono<\/strong>: no existe una l\u00ednea de reloj separada. El transmisor y el receptor deben acordar de antemano la velocidad (baud rate) y el formato del frame. Cada byte se encapsula en un <strong style=\"color: #e8eaf0;\">frame<\/strong> con la siguiente estructura:<\/p>\n<p><img loading=\"lazy\" class=\"alignnone size-large wp-image-8056\" src=\"https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2026\/05\/1-1024x374.png\" alt=\"\" width=\"1024\" height=\"374\" srcset=\"https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2026\/05\/1-1024x374.png 1024w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2026\/05\/1-300x110.png 300w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2026\/05\/1-768x280.png 768w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2026\/05\/1-820x299.png 820w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2026\/05\/1.png 1082w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<h3 style=\"font-family: 'Syne',sans-serif; font-size: 17px; font-weight: bold; color: #e05a00; margin: 28px 0 12px;\">Anatom\u00eda del frame UART<\/h3>\n<div style=\"display: flex; flex-direction: column; gap: 12px; margin-bottom: 32px;\">\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-left: 3px solid #e05a00; border-radius: 8px; padding: 14px 18px; display: flex; gap: 16px; align-items: flex-start;\">\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 11px; font-weight: bold; color: #e05a00; text-transform: uppercase; min-width: 80px; padding-top: 2px;\">START bit<\/div>\n<p style=\"font-size: 15px; color: #a8b4c0; margin: 0; line-height: 1.6;\">Siempre nivel 0 (LOW), duraci\u00f3n de 1 bit. Avisa al receptor que comienza una transmisi\u00f3n rompiendo el estado IDLE que es nivel alto. El receptor detecta el flanco descendente y sincroniza su reloj interno.<\/p>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-left: 3px solid #00bcd4; border-radius: 8px; padding: 14px 18px; display: flex; gap: 16px; align-items: flex-start;\">\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 11px; font-weight: bold; color: #00bcd4; text-transform: uppercase; min-width: 80px; padding-top: 2px;\">DATA bits<\/div>\n<p style=\"font-size: 15px; color: #a8b4c0; margin: 0; line-height: 1.6;\">Normalmente 8 bits, transmitidos LSB (bit menos significativo) primero. Puede configurarse en 5, 6, 7 u 8 bits seg\u00fan el protocolo. El receptor muestrea cada bit en el centro de su per\u00edodo para mayor confiabilidad.<\/p>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-left: 3px solid #7c6eff; border-radius: 8px; padding: 14px 18px; display: flex; gap: 16px; align-items: flex-start;\">\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 11px; font-weight: bold; color: #7c6eff; text-transform: uppercase; min-width: 80px; padding-top: 2px;\">PARITY bit<\/div>\n<p style=\"font-size: 15px; color: #a8b4c0; margin: 0; line-height: 1.6;\">Opcional. Puede ser: par (Even), impar (Odd), siempre 0 (Space), siempre 1 (Mark) o ausente (None). Solo detecta errores de 1 bit. La configuraci\u00f3n m\u00e1s com\u00fan es N (ninguno). Si se usa, agrega 1 bit entre los datos y el stop.<\/p>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-left: 3px solid #28c840; border-radius: 8px; padding: 14px 18px; display: flex; gap: 16px; align-items: flex-start;\">\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 11px; font-weight: bold; color: #28c840; text-transform: uppercase; min-width: 80px; padding-top: 2px;\">STOP bit(s)<\/div>\n<p style=\"font-size: 15px; color: #a8b4c0; margin: 0; line-height: 1.6;\">Siempre nivel 1 (HIGH). Puede ser 1, 1.5 o 2 bits. Marca el fin del frame y da tiempo al receptor para procesar el byte antes del siguiente START bit. La configuraci\u00f3n est\u00e1ndar moderna es 1 stop bit.<\/p>\n<\/div>\n<\/div>\n<h3 style=\"font-family: 'Syne',sans-serif; font-size: 17px; font-weight: bold; color: #e05a00; margin: 0 0 12px;\">Baud rate \u2014 velocidades est\u00e1ndar<\/h3>\n<p style=\"color: #a8b4c0; margin-bottom: 16px;\">El <strong style=\"color: #e8eaf0;\">baud rate<\/strong> indica la cantidad de s\u00edmbolos (bits) por segundo. En UART, 1 baud = 1 bit. Las velocidades est\u00e1ndar m\u00e1s comunes son:<\/p>\n<div style=\"overflow-x: auto; border-radius: 10px; border: 1px solid #1e2a38; margin-bottom: 16px;\">\n<table style=\"width: 100%; border-collapse: collapse; font-family: 'JetBrains Mono',monospace; font-size: 13px;\">\n<thead>\n<tr style=\"background: #161e28; border-bottom: 2px solid #1e2a38;\">\n<th style=\"padding: 10px 14px; text-align: left; color: #00bcd4; font-size: 10px; letter-spacing: 1px; text-transform: uppercase; white-space: nowrap;\">Baud rate<\/th>\n<th style=\"padding: 10px 14px; text-align: left; color: #6b7a8d; font-size: 10px; letter-spacing: 1px; text-transform: uppercase;\">Uso t\u00edpico<\/th>\n<th style=\"padding: 10px 14px; text-align: left; color: #6b7a8d; font-size: 10px; letter-spacing: 1px; text-transform: uppercase;\">Bytes\/segundo \u00fatiles (8N1)<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr style=\"border-bottom: 1px solid #1e2a38;\">\n<td style=\"padding: 9px 14px; color: #6b7a8d; white-space: nowrap;\">300<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">M\u00f3dems hist\u00f3ricos, teletipos<\/td>\n<td style=\"padding: 9px 14px; color: #6b7a8d;\">30 B\/s<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #1e2a38; background: rgba(255,255,255,0.01);\">\n<td style=\"padding: 9px 14px; color: #b0bec5; font-weight: bold; white-space: nowrap;\">9600<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">GPS NMEA, equipos industriales, consolas de red<\/td>\n<td style=\"padding: 9px 14px; color: #b0bec5;\">960 B\/s<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #1e2a38;\">\n<td style=\"padding: 9px 14px; color: #b0bec5; white-space: nowrap;\">19200<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">Modbus RTU, equipos m\u00e9dicos legacy<\/td>\n<td style=\"padding: 9px 14px; color: #b0bec5;\">1920 B\/s<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #1e2a38; background: rgba(255,255,255,0.01);\">\n<td style=\"padding: 9px 14px; color: #b0bec5; white-space: nowrap;\">57600<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">M\u00f3dulos Bluetooth cl\u00e1sico<\/td>\n<td style=\"padding: 9px 14px; color: #b0bec5;\">5760 B\/s<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #1e2a38;\">\n<td style=\"padding: 9px 14px; color: #00bcd4; font-weight: bold; white-space: nowrap;\">115200<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">Arduino IDE, ESP32 debug, m\u00f3dulos GSM\/GPS modernos<\/td>\n<td style=\"padding: 9px 14px; color: #00bcd4; font-weight: bold;\">11520 B\/s<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #1e2a38; background: rgba(255,255,255,0.01);\">\n<td style=\"padding: 9px 14px; color: #b0bec5; white-space: nowrap;\">230400<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">STM32, algunos m\u00f3dulos WiFi<\/td>\n<td style=\"padding: 9px 14px; color: #b0bec5;\">23040 B\/s<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #1e2a38;\">\n<td style=\"padding: 9px 14px; color: #b0bec5; white-space: nowrap;\">921600<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">Flash de ESP32\/ESP8266, STM32 alta velocidad<\/td>\n<td style=\"padding: 9px 14px; color: #b0bec5;\">92160 B\/s<\/td>\n<\/tr>\n<tr style=\"background: rgba(255,255,255,0.01);\">\n<td style=\"padding: 9px 14px; color: #e05a00; font-weight: bold; white-space: nowrap;\">1M \u2014 4M<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">UART hardware moderno (STM32, RP2040), l\u00edmite PCB<\/td>\n<td style=\"padding: 9px 14px; color: #e05a00; font-weight: bold;\">hasta 400 KB\/s<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-left: 3px solid #ffa726; border-radius: 8px; padding: 16px 20px; margin-bottom: 40px;\">\n<p style=\"margin: 0; font-size: 15px; color: #c0cad8;\"><strong style=\"color: #ffa726;\">\u26a0 Tolerancia de baud rate:<\/strong> El error m\u00e1ximo aceptable entre transmisor y receptor es de \u00b12\u20133%. Con un cristal de 16 MHz en un AVR y 115200 baud el error es ~0.2%, perfectamente confiable. Con osciladores RC internos puede llegar a 2\u20133%, que es el l\u00edmite. M\u00e1s error \u2192 bits corruptos \u2192 garbage en el monitor serie.<\/p>\n<\/div>\n<p><!-- ====================================================== --><br \/>\n<!-- SE\u00d1ALES DB-9 --><br \/>\n<!-- ====================================================== --><\/p>\n<h2 style=\"font-family: 'Syne',sans-serif; font-size: 22px; font-weight: bold; color: #fff; margin: 0 0 20px; padding-bottom: 12px; border-bottom: 1px solid #1e2a38; display: flex; align-items: center; gap: 12px;\"><span style=\"background: rgba(0,188,212,0.1); width: 28px; height: 28px; border-radius: 6px; display: inline-flex; align-items: center; justify-content: center; font-size: 14px;\">\ud83d\udd0c<\/span><br \/>\nConector DB-9 \u2014 Las 9 se\u00f1ales del RS-232<\/h2>\n<p style=\"color: #a8b4c0; margin-bottom: 16px;\">El conector DB-9 (t\u00e9cnicamente DE-9) reemplaz\u00f3 al DB-25 original en la era del IBM PC\/AT. Sus nueve pines cubren los datos y las se\u00f1ales de handshaking para control de flujo con m\u00f3dems:<\/p>\n<div style=\"overflow-x: auto; border-radius: 10px; border: 1px solid #1e2a38; margin-bottom: 16px;\">\n<table style=\"width: 100%; border-collapse: collapse; font-family: 'JetBrains Mono',monospace; font-size: 12px;\">\n<thead>\n<tr style=\"background: #161e28; border-bottom: 2px solid #1e2a38;\">\n<th style=\"padding: 10px 14px; text-align: left; color: #00bcd4; font-size: 10px; letter-spacing: 1px; text-transform: uppercase; white-space: nowrap;\">Pin DB-9<\/th>\n<th style=\"padding: 10px 14px; text-align: left; color: #6b7a8d; font-size: 10px; letter-spacing: 1px; text-transform: uppercase;\">Se\u00f1al<\/th>\n<th style=\"padding: 10px 14px; text-align: left; color: #6b7a8d; font-size: 10px; letter-spacing: 1px; text-transform: uppercase;\">Nombre completo<\/th>\n<th style=\"padding: 10px 14px; text-align: left; color: #6b7a8d; font-size: 10px; letter-spacing: 1px; text-transform: uppercase;\">Dir.<\/th>\n<th style=\"padding: 10px 14px; text-align: left; color: #6b7a8d; font-size: 10px; letter-spacing: 1px; text-transform: uppercase;\">Funci\u00f3n<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr style=\"border-bottom: 1px solid #1e2a38;\">\n<td style=\"padding: 9px 14px; color: #6b7a8d;\">1<\/td>\n<td style=\"padding: 9px 14px; color: #7c6eff; font-weight: bold;\">DCD<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">Data Carrier Detect<\/td>\n<td style=\"padding: 9px 14px; color: #6b7a8d;\">\u2190 IN<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0; font-size: 12px;\">El m\u00f3dem detect\u00f3 portadora en la l\u00ednea telef\u00f3nica<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #1e2a38; background: rgba(255,255,255,0.01);\">\n<td style=\"padding: 9px 14px; color: #6b7a8d;\">2<\/td>\n<td style=\"padding: 9px 14px; color: #e05a00; font-weight: bold;\">RXD<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">Received Data<\/td>\n<td style=\"padding: 9px 14px; color: #6b7a8d;\">\u2190 IN<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0; font-size: 12px;\">Datos recibidos del equipo remoto<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #1e2a38;\">\n<td style=\"padding: 9px 14px; color: #6b7a8d;\">3<\/td>\n<td style=\"padding: 9px 14px; color: #00bcd4; font-weight: bold;\">TXD<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">Transmitted Data<\/td>\n<td style=\"padding: 9px 14px; color: #6b7a8d;\">\u2192 OUT<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0; font-size: 12px;\">Datos enviados por el DTE (terminal)<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #1e2a38; background: rgba(255,255,255,0.01);\">\n<td style=\"padding: 9px 14px; color: #6b7a8d;\">4<\/td>\n<td style=\"padding: 9px 14px; color: #7c6eff; font-weight: bold;\">DTR<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">Data Terminal Ready<\/td>\n<td style=\"padding: 9px 14px; color: #6b7a8d;\">\u2192 OUT<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0; font-size: 12px;\">El terminal est\u00e1 encendido y listo para operar<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #1e2a38;\">\n<td style=\"padding: 9px 14px; color: #6b7a8d;\">5<\/td>\n<td style=\"padding: 9px 14px; color: #6b7a8d; font-weight: bold;\">GND<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">Signal Ground<\/td>\n<td style=\"padding: 9px 14px; color: #6b7a8d;\">\u2014<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0; font-size: 12px;\">Tierra de se\u00f1al \u2014 referencia com\u00fan obligatoria<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #1e2a38; background: rgba(255,255,255,0.01);\">\n<td style=\"padding: 9px 14px; color: #6b7a8d;\">6<\/td>\n<td style=\"padding: 9px 14px; color: #7c6eff; font-weight: bold;\">DSR<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">Data Set Ready<\/td>\n<td style=\"padding: 9px 14px; color: #6b7a8d;\">\u2190 IN<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0; font-size: 12px;\">El m\u00f3dem est\u00e1 listo para operar<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #1e2a38;\">\n<td style=\"padding: 9px 14px; color: #6b7a8d;\">7<\/td>\n<td style=\"padding: 9px 14px; color: #00bcd4; font-weight: bold;\">RTS<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">Request To Send<\/td>\n<td style=\"padding: 9px 14px; color: #6b7a8d;\">\u2192 OUT<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0; font-size: 12px;\">El terminal solicita permiso para transmitir (flow control)<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #1e2a38; background: rgba(255,255,255,0.01);\">\n<td style=\"padding: 9px 14px; color: #6b7a8d;\">8<\/td>\n<td style=\"padding: 9px 14px; color: #e05a00; font-weight: bold;\">CTS<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">Clear To Send<\/td>\n<td style=\"padding: 9px 14px; color: #6b7a8d;\">\u2190 IN<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0; font-size: 12px;\">El m\u00f3dem da permiso para transmitir (flow control)<\/td>\n<\/tr>\n<tr>\n<td style=\"padding: 9px 14px; color: #6b7a8d;\">9<\/td>\n<td style=\"padding: 9px 14px; color: #7c6eff; font-weight: bold;\">RI<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">Ring Indicator<\/td>\n<td style=\"padding: 9px 14px; color: #6b7a8d;\">\u2190 IN<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0; font-size: 12px;\">Indica llamada entrante en la l\u00ednea telef\u00f3nica<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-left: 3px solid #00bcd4; border-radius: 8px; padding: 16px 20px; margin-bottom: 40px;\">\n<p style=\"margin: 0; font-size: 15px; color: #c0cad8;\"><strong style=\"color: #00bcd4;\">Para makers:<\/strong> En el 99% de los proyectos embebidos solo se usan TXD (pin 3), RXD (pin 2) y GND (pin 5). Los pines de control (RTS\/CTS, DTR\/DSR) se pueden conectar en loopback (7\u21948 y 4\u21946) si el software los requiere pero el hardware no los usa realmente.<\/p>\n<\/div>\n<h2 style=\"font-family: 'Syne',sans-serif; font-size: 22px; font-weight: bold; color: #fff; margin: 0 0 20px; padding-bottom: 12px; border-bottom: 1px solid #1e2a38; display: flex; align-items: center; gap: 12px;\"><span style=\"background: rgba(224,90,0,0.1); width: 28px; height: 28px; border-radius: 6px; display: inline-flex; align-items: center; justify-content: center; font-size: 14px;\">\u26a1<\/span><br \/>\nNiveles el\u00e9ctricos \u2014 RS-232 vs TTL vs RS-485<\/h2>\n<p style=\"color: #a8b4c0; margin-bottom: 16px;\">Mezclar niveles el\u00e9ctricos sin conversi\u00f3n es el error m\u00e1s destructivo que puede cometer un maker. Conectar directamente un microcontrolador (TTL\/LVTTL) a un puerto RS-232 f\u00edsico puede da\u00f1ar el MCU permanentemente:<\/p>\n<div style=\"overflow-x: auto; border-radius: 10px; border: 1px solid #1e2a38; margin-bottom: 16px;\">\n<table style=\"width: 100%; border-collapse: collapse; font-family: 'JetBrains Mono',monospace; font-size: 13px;\">\n<thead>\n<tr style=\"background: #161e28; border-bottom: 2px solid #1e2a38;\">\n<th style=\"padding: 10px 14px; text-align: left; color: #00bcd4; font-size: 10px; letter-spacing: 1px; text-transform: uppercase;\">Est\u00e1ndar<\/th>\n<th style=\"padding: 10px 14px; text-align: left; color: #6b7a8d; font-size: 10px; letter-spacing: 1px; text-transform: uppercase;\">L\u00f3gico &#8220;1&#8221; (MARK)<\/th>\n<th style=\"padding: 10px 14px; text-align: left; color: #6b7a8d; font-size: 10px; letter-spacing: 1px; text-transform: uppercase;\">L\u00f3gico &#8220;0&#8221; (SPACE)<\/th>\n<th style=\"padding: 10px 14px; text-align: left; color: #6b7a8d; font-size: 10px; letter-spacing: 1px; text-transform: uppercase;\">Distancia m\u00e1x.<\/th>\n<th style=\"padding: 10px 14px; text-align: left; color: #6b7a8d; font-size: 10px; letter-spacing: 1px; text-transform: uppercase;\">Nodos<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr style=\"border-bottom: 1px solid #1e2a38;\">\n<td style=\"padding: 9px 14px; color: #e05a00; font-weight: bold;\">RS-232<\/td>\n<td style=\"padding: 9px 14px; color: #ef5350;\">\u22123V a \u221225V<\/td>\n<td style=\"padding: 9px 14px; color: #66bb6a;\">+3V a +25V<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">15 m @ 20 kbps<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">1 a 1<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #1e2a38; background: rgba(255,255,255,0.01);\">\n<td style=\"padding: 9px 14px; color: #ffa726; font-weight: bold;\">TTL 5V<\/td>\n<td style=\"padding: 9px 14px; color: #66bb6a;\">&gt; 2.4V<\/td>\n<td style=\"padding: 9px 14px; color: #ef5350;\">&lt; 0.8V<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">corta (PCB)<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">1 a 1<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #1e2a38;\">\n<td style=\"padding: 9px 14px; color: #ffa726; font-weight: bold;\">LVTTL 3.3V<\/td>\n<td style=\"padding: 9px 14px; color: #66bb6a;\">&gt; 2.0V<\/td>\n<td style=\"padding: 9px 14px; color: #ef5350;\">&lt; 0.8V<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">corta (PCB)<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">1 a 1<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #1e2a38; background: rgba(255,255,255,0.01);\">\n<td style=\"padding: 9px 14px; color: #00bcd4; font-weight: bold;\">RS-422<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">Diferencial A\u2212B &gt; +2V<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">Diferencial A\u2212B &lt; \u22122V<\/td>\n<td style=\"padding: 9px 14px; color: #00bcd4;\">1200 m @ 100 kbps<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">1 TX \/ 10 RX<\/td>\n<\/tr>\n<tr>\n<td style=\"padding: 9px 14px; color: #00bcd4; font-weight: bold;\">RS-485<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">Diferencial A\u2212B &gt; +0.2V<\/td>\n<td style=\"padding: 9px 14px; color: #8090a0;\">Diferencial A\u2212B &lt; \u22120.2V<\/td>\n<td style=\"padding: 9px 14px; color: #00bcd4;\">1200 m @ 100 kbps<\/td>\n<td style=\"padding: 9px 14px; color: #00bcd4; font-weight: bold;\">32 nodos (bus)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p style=\"color: #a8b4c0; margin-bottom: 40px;\">Para convertir entre TTL y RS-232 se usan chips <strong style=\"color: #e8eaf0;\">MAX232<\/strong> (o SP3232 para 3.3V), que generan \u00b112V internamente con una bomba de carga. Para conversi\u00f3n a USB, los m\u00e1s usados son el <strong style=\"color: #e8eaf0;\">CH340G<\/strong> (econ\u00f3mico, muy com\u00fan en clones Arduino), el <strong style=\"color: #e8eaf0;\">CP2102<\/strong> (Silicon Labs) y el <strong style=\"color: #e8eaf0;\">FT232RL<\/strong> (FTDI, el m\u00e1s robusto).<\/p>\n<p><!-- ====================================================== --><br \/>\n<!-- EVOLUCI\u00d3N Y VARIANTES --><br \/>\n<!-- ====================================================== --><\/p>\n<h2 style=\"font-family: 'Syne',sans-serif; font-size: 22px; font-weight: bold; color: #fff; margin: 0 0 20px; padding-bottom: 12px; border-bottom: 1px solid #1e2a38; display: flex; align-items: center; gap: 12px;\"><span style=\"background: rgba(124,110,255,0.1); width: 28px; height: 28px; border-radius: 6px; display: inline-flex; align-items: center; justify-content: center; font-size: 14px;\">\ud83d\udd00<\/span><br \/>\nEvoluci\u00f3n y variantes \u2014 60 a\u00f1os de mejoras<\/h2>\n<div style=\"display: flex; flex-direction: column; gap: 16px; margin-bottom: 40px;\">\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-top: 3px solid #00bcd4; border-radius: 10px; padding: 18px 22px;\">\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 16px; font-weight: bold; color: #00bcd4; margin-bottom: 6px;\">RS-485<\/div>\n<div style=\"font-size: 13px; color: #6b7a8d; font-style: italic; margin-bottom: 10px;\">El est\u00e1ndar dominante de automatizaci\u00f3n industrial<\/div>\n<p style=\"font-size: 14.5px; color: #a8b4c0; margin: 0; line-height: 1.65;\">Se\u00f1alizaci\u00f3n diferencial sobre par trenzado, half-duplex, multi-punto con hasta 32 nodos en un bus compartido (m\u00e1s con repetidores). Inmune al ruido electromagn\u00e9tico en entornos industriales. Soporta distancias de hasta 1200 metros a 100 kbps, o 10 metros a 10 Mbps. Es la capa f\u00edsica de <strong style=\"color: #e8eaf0;\">Modbus RTU, DMX512 y PROFIBUS<\/strong> \u2014 los protocolos de automatizaci\u00f3n m\u00e1s usados del mundo.<\/p>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-top: 3px solid #26c6da; border-radius: 10px; padding: 18px 22px;\">\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 16px; font-weight: bold; color: #26c6da; margin-bottom: 6px;\">RS-422<\/div>\n<div style=\"font-size: 13px; color: #6b7a8d; font-style: italic; margin-bottom: 10px;\">Diferencial unidireccional de largo alcance<\/div>\n<p style=\"font-size: 14.5px; color: #a8b4c0; margin: 0; line-height: 1.65;\">Versi\u00f3n diferencial del RS-232 pero solo en un sentido (full-duplex con 2 pares). Hasta 10 Mbps en distancias cortas, o 100 kbps a 1200 m. Muy usado en equipos de audio\/video profesional, maquinaria CNC y sistemas de medici\u00f3n de precisi\u00f3n donde el ruido el\u00e9ctrico es una preocupaci\u00f3n.<\/p>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-top: 3px solid #ffa726; border-radius: 10px; padding: 18px 22px;\">\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 16px; font-weight: bold; color: #ffa726; margin-bottom: 6px;\">LIN Bus<\/div>\n<div style=\"font-size: 13px; color: #6b7a8d; font-style: italic; margin-bottom: 10px;\">UART simplificado para la electr\u00f3nica automotriz<\/div>\n<p style=\"font-size: 14.5px; color: #a8b4c0; margin: 0; line-height: 1.65;\">Evoluci\u00f3n de UART para el mercado automotriz. Un solo hilo de datos m\u00e1s masa (sin par diferencial), topolog\u00eda maestro\/esclavo, velocidad m\u00e1xima de 20 kbps. Est\u00e1 presente en decenas de nodos por veh\u00edculo moderno: espejos el\u00e9ctricos, ventanas, asientos, sensores de temperatura de cabina, LEDs interiores y m\u00e1s. Econ\u00f3mico de implementar al no necesitar tranceivers diferenciales.<\/p>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-top: 3px solid #7c6eff; border-radius: 10px; padding: 18px 22px;\">\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 16px; font-weight: bold; color: #7c6eff; margin-bottom: 6px;\">USART \u2014 Modo s\u00edncrono<\/div>\n<div style=\"font-size: 13px; color: #6b7a8d; font-style: italic; margin-bottom: 10px;\">UART con clock externo opcional<\/div>\n<p style=\"font-size: 14.5px; color: #a8b4c0; margin: 0; line-height: 1.65;\">El USART (Universal Synchronous\/Asynchronous Receiver\/Transmitter) agrega un pin de reloj externo para operar en modo s\u00edncrono. Disponible en AVR (ATmega), STM32, PIC y otros. En modo s\u00edncrono puede operar como maestro SPI sobre los mismos pines TX\/RX, lo que da mucha flexibilidad de dise\u00f1o al programador de firmware.<\/p>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-top: 3px solid #66bb6a; border-radius: 10px; padding: 18px 22px;\">\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 16px; font-weight: bold; color: #66bb6a; margin-bottom: 6px;\">USB-CDC Virtual COM Port<\/div>\n<div style=\"font-size: 13px; color: #6b7a8d; font-style: italic; margin-bottom: 10px;\">UART sobre USB \u2014 el bridge moderno universal<\/div>\n<p style=\"font-size: 14.5px; color: #a8b4c0; margin: 0; line-height: 1.65;\">La clase USB CDC-ACM (Communications Device Class \u2013 Abstract Control Model) permite que un dispositivo USB se presente al sistema operativo como un puerto COM virtual. Es lo que hacen el CH340, CP2102, FT232 y los STM32 Nucleo con su ST-Link. El Arduino IDE ve un &#8220;COMx&#8221; o &#8220;\/dev\/ttyUSBx&#8221; como si fuera un puerto serie real. El protocolo subyacente sigue siendo UART, simplemente encapsulado en USB.<\/p>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-top: 3px solid #ef5350; border-radius: 10px; padding: 18px 22px;\">\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 16px; font-weight: bold; color: #ef5350; margin-bottom: 6px;\">Control de flujo HW y SW<\/div>\n<div style=\"font-size: 13px; color: #6b7a8d; font-style: italic; margin-bottom: 10px;\">Mecanismos para evitar p\u00e9rdida de datos<\/div>\n<p style=\"font-size: 14.5px; color: #a8b4c0; margin: 0; line-height: 1.65;\"><strong style=\"color: #e8eaf0;\">Hardware (RTS\/CTS):<\/strong> El receptor baja RTS cuando su buffer est\u00e1 casi lleno. El transmisor detiene el env\u00edo hasta que CTS vuelva a estar activo. Totalmente transparente a la aplicaci\u00f3n. <strong style=\"color: #e8eaf0;\">Software (XON\/XOFF):<\/strong> El receptor env\u00eda el byte 0x13 (XOFF) para pausar la transmisi\u00f3n y 0x11 (XON) para reanudarla. No requiere pines adicionales pero consume ancho de banda.<\/p>\n<\/div>\n<\/div>\n<p><!-- ====================================================== --><br \/>\n<!-- C\u00d3DIGO --><br \/>\n<!-- ====================================================== --><\/p>\n<h2 style=\"font-family: 'Syne',sans-serif; font-size: 22px; font-weight: bold; color: #fff; margin: 0 0 20px; padding-bottom: 12px; border-bottom: 1px solid #1e2a38; display: flex; align-items: center; gap: 12px;\"><span style=\"background: rgba(102,187,106,0.1); width: 28px; height: 28px; border-radius: 6px; display: inline-flex; align-items: center; justify-content: center; font-size: 14px;\">\ud83d\udcbb<\/span><br \/>\nC\u00f3digo pr\u00e1ctico \u2014 Tres plataformas<\/h2>\n<pre class=\"lang:default decode:true\">\/\/ Configuraci\u00f3n 115200 baud, 8 data bits, sin paridad, 1 stop bit\r\n\r\nvoid setup() {\r\n    Serial.begin(115200);\r\n\r\n    \/\/ Para 9600 baud, 7 bits, paridad par, 1 stop bit:\r\n    \/\/ Serial.begin(9600, SERIAL_7E1);\r\n}\r\n\r\nvoid loop() {\r\n    if (Serial.available()) {\r\n        char c = Serial.read();\r\n\r\n        Serial.print(\"Recib\u00ed: 0x\");\r\n        Serial.println(c, HEX);\r\n    }\r\n}<\/pre>\n<pre class=\"lang:default decode:true \" title=\"ESP32 \u2014 UART2 con pines personalizados (GPS a 9600 baud)\">\/\/ El ESP32 tiene 3 UARTs hardware:\r\n\/\/ UART0 (USB\/debug), UART1 y UART2\r\n\/\/ Los pines son completamente reasignables\r\n\r\n#include &lt;HardwareSerial.h&gt;\r\n\r\n\/\/ Crear instancia para UART2\r\nHardwareSerial GPS_Serial(2);\r\n\r\nvoid setup() {\r\n\r\n    \/\/ UART0 \u2192 Debug por USB\r\n    Serial.begin(115200);\r\n\r\n    \/\/ UART2\r\n    \/\/ Baudrate: 9600\r\n    \/\/ Formato: 8 data bits, No parity, 1 stop bit\r\n    \/\/ RX = GPIO16\r\n    \/\/ TX = GPIO17\r\n    GPS_Serial.begin(9600, SERIAL_8N1, 16, 17);\r\n\r\n    Serial.println(\"Inicializando GPS...\");\r\n}\r\n\r\nvoid loop() {\r\n\r\n    \/\/ Verificar si llegan datos desde el GPS\r\n    if (GPS_Serial.available()) {\r\n\r\n        \/\/ Leer una l\u00ednea completa\r\n        String trama = GPS_Serial.readStringUntil('\\n');\r\n\r\n        \/\/ Mostrar solo tramas GPRMC\r\n        if (trama.startsWith(\"$GPRMC\")) {\r\n\r\n            Serial.println(\"GPS: \" + trama);\r\n        }\r\n    }\r\n}<\/pre>\n<hr \/>\n<pre class=\"lang:default decode:true \" title=\"STM32 HAL \u2014 UART con DMA (recepci\u00f3n sin bloqueo)\">\/\/ Configurado con STM32CubeMX:\r\n\/\/ UART2 \u2192 115200 baud, 8 data bits, No parity, 1 stop bit\r\n\/\/ Recepci\u00f3n mediante DMA circular\r\n\r\nUART_HandleTypeDef huart2;\r\n\r\nuint8_t rxBuf[64];\r\n\r\nvoid MX_USART2_UART_Init(void)\r\n{\r\n    huart2.Instance = USART2;\r\n    huart2.Init.BaudRate   = 115200;\r\n    huart2.Init.WordLength = UART_WORDLENGTH_8B;\r\n    huart2.Init.StopBits   = UART_STOPBITS_1;\r\n    huart2.Init.Parity     = UART_PARITY_NONE;\r\n    huart2.Init.Mode       = UART_MODE_TX_RX;\r\n    huart2.Init.HwFlowCtl  = UART_HWCONTROL_NONE;\r\n\r\n    HAL_UART_Init(&amp;huart2);\r\n\r\n    \/\/ Iniciar DMA circular\r\n    \/\/ La CPU queda libre mientras llegan datos\r\n    HAL_UART_Receive_DMA(&amp;huart2, rxBuf, sizeof(rxBuf));\r\n}\r\n\r\n\r\n\/\/ Callback autom\u00e1tico al completar el buffer DMA\r\nvoid HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)\r\n{\r\n    if (huart-&gt;Instance == USART2)\r\n    {\r\n        \/\/ Procesar datos recibidos\r\n        procesarDatos(rxBuf, sizeof(rxBuf));\r\n\r\n        \/\/ Reiniciar recepci\u00f3n DMA\r\n        HAL_UART_Receive_DMA(&amp;huart2, rxBuf, sizeof(rxBuf));\r\n    }\r\n}<\/pre>\n<p>&nbsp;<\/p>\n<h2 style=\"font-family: 'Syne',sans-serif; font-size: 22px; font-weight: bold; color: #fff; margin: 0 0 20px; padding-bottom: 12px; border-bottom: 1px solid #1e2a38; display: flex; align-items: center; gap: 12px;\"><span style=\"background: rgba(0,188,212,0.1); width: 28px; height: 28px; border-radius: 6px; display: inline-flex; align-items: center; justify-content: center; font-size: 14px;\">\ud83d\udcca<\/span><br \/>\n\u00bfCu\u00e1nto se usa hoy? \u2014 El estado en 2025<\/h2>\n<p style=\"color: #a8b4c0; margin-bottom: 24px;\">La respuesta corta es: <strong style=\"color: #e8eaf0;\">enormemente<\/strong>. Es uno de los protocolos m\u00e1s utilizados del planeta si se suman todas sus formas. La confusi\u00f3n viene de que en muchos casos est\u00e1 &#8220;escondido&#8221; dentro de otro protocolo o producto.<\/p>\n<div style=\"display: flex; flex-direction: column; gap: 10px; margin-bottom: 32px;\">\n<div style=\"display: flex; align-items: center; gap: 12px;\">\n<p><span style=\"font-family: 'JetBrains Mono',monospace; font-size: 12px; color: #6b7a8d; min-width: 170px;\">Microcontroladores<\/span><\/p>\n<div style=\"flex: 1; height: 8px; background: #161e28; border-radius: 4px; overflow: hidden;\">\n<div style=\"width: 98%; height: 100%; background: linear-gradient(90deg,#00bcd4,rgba(0,188,212,0.4)); border-radius: 4px;\"><\/div>\n<\/div>\n<p><span style=\"font-family: 'JetBrains Mono',monospace; font-size: 12px; color: #00bcd4; min-width: 36px; text-align: right;\">~98%<\/span><\/p>\n<\/div>\n<div style=\"display: flex; align-items: center; gap: 12px;\">\n<p><span style=\"font-family: 'JetBrains Mono',monospace; font-size: 12px; color: #6b7a8d; min-width: 170px;\">M\u00f3dulos GPS \/ GNSS<\/span><\/p>\n<div style=\"flex: 1; height: 8px; background: #161e28; border-radius: 4px; overflow: hidden;\">\n<div style=\"width: 95%; height: 100%; background: linear-gradient(90deg,#00bcd4,rgba(0,188,212,0.4)); border-radius: 4px;\"><\/div>\n<\/div>\n<p><span style=\"font-family: 'JetBrains Mono',monospace; font-size: 12px; color: #00bcd4; min-width: 36px; text-align: right;\">~95%<\/span><\/p>\n<\/div>\n<div style=\"display: flex; align-items: center; gap: 12px;\">\n<p><span style=\"font-family: 'JetBrains Mono',monospace; font-size: 12px; color: #6b7a8d; min-width: 170px;\">Equipos industriales<\/span><\/p>\n<div style=\"flex: 1; height: 8px; background: #161e28; border-radius: 4px; overflow: hidden;\">\n<div style=\"width: 90%; height: 100%; background: linear-gradient(90deg,#00bcd4,rgba(0,188,212,0.4)); border-radius: 4px;\"><\/div>\n<\/div>\n<p><span style=\"font-family: 'JetBrains Mono',monospace; font-size: 12px; color: #00bcd4; min-width: 36px; text-align: right;\">~90%<\/span><\/p>\n<\/div>\n<div style=\"display: flex; align-items: center; gap: 12px;\">\n<p><span style=\"font-family: 'JetBrains Mono',monospace; font-size: 12px; color: #6b7a8d; min-width: 170px;\">Automotriz (LIN bus)<\/span><\/p>\n<div style=\"flex: 1; height: 8px; background: #161e28; border-radius: 4px; overflow: hidden;\">\n<div style=\"width: 85%; height: 100%; background: linear-gradient(90deg,#00bcd4,rgba(0,188,212,0.4)); border-radius: 4px;\"><\/div>\n<\/div>\n<p><span style=\"font-family: 'JetBrains Mono',monospace; font-size: 12px; color: #00bcd4; min-width: 36px; text-align: right;\">~85%<\/span><\/p>\n<\/div>\n<div style=\"display: flex; align-items: center; gap: 12px;\">\n<p><span style=\"font-family: 'JetBrains Mono',monospace; font-size: 12px; color: #6b7a8d; min-width: 170px;\">Routers \/ Networking<\/span><\/p>\n<div style=\"flex: 1; height: 8px; background: #161e28; border-radius: 4px; overflow: hidden;\">\n<div style=\"width: 80%; height: 100%; background: linear-gradient(90deg,#00bcd4,rgba(0,188,212,0.4)); border-radius: 4px;\"><\/div>\n<\/div>\n<p><span style=\"font-family: 'JetBrains Mono',monospace; font-size: 12px; color: #00bcd4; min-width: 36px; text-align: right;\">~80%<\/span><\/p>\n<\/div>\n<div style=\"display: flex; align-items: center; gap: 12px;\">\n<p><span style=\"font-family: 'JetBrains Mono',monospace; font-size: 12px; color: #6b7a8d; min-width: 170px;\">PCs desktop\/laptop<\/span><\/p>\n<div style=\"flex: 1; height: 8px; background: #161e28; border-radius: 4px; overflow: hidden;\">\n<div style=\"width: 20%; height: 100%; background: linear-gradient(90deg,#6b7a8d,rgba(107,122,141,0.4)); border-radius: 4px;\"><\/div>\n<\/div>\n<p><span style=\"font-family: 'JetBrains Mono',monospace; font-size: 12px; color: #6b7a8d; min-width: 36px; text-align: right;\">~20%<\/span><\/p>\n<\/div>\n<div style=\"display: flex; align-items: center; gap: 12px;\">\n<p><span style=\"font-family: 'JetBrains Mono',monospace; font-size: 12px; color: #6b7a8d; min-width: 170px;\">Puerto RS-232 f\u00edsico<\/span><\/p>\n<div style=\"flex: 1; height: 8px; background: #161e28; border-radius: 4px; overflow: hidden;\">\n<div style=\"width: 12%; height: 100%; background: linear-gradient(90deg,#6b7a8d,rgba(107,122,141,0.4)); border-radius: 4px;\"><\/div>\n<\/div>\n<p><span style=\"font-family: 'JetBrains Mono',monospace; font-size: 12px; color: #6b7a8d; min-width: 36px; text-align: right;\">~12%<\/span><\/p>\n<\/div>\n<\/div>\n<p style=\"font-size: 12px; color: #6b7a8d; font-family: 'JetBrains Mono',monospace; margin-bottom: 32px;\">* % de dispositivos de cada categor\u00eda que incluyen UART en alguna forma. Estimaciones basadas en cobertura de datasheets y reportes de mercado de semiconductores 2024.<\/p>\n<h3 style=\"font-family: 'Syne',sans-serif; font-size: 17px; font-weight: bold; color: #e05a00; margin: 0 0 16px;\">D\u00f3nde lo encontramos hoy<\/h3>\n<div style=\"display: grid; grid-template-columns: repeat(auto-fill,minmax(240px,1fr)); gap: 14px; margin-bottom: 40px;\">\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-radius: 10px; padding: 18px 20px;\">\n<div style=\"font-size: 22px; margin-bottom: 8px;\">\ud83e\udd16<\/div>\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 13px; font-weight: bold; color: #00bcd4; margin-bottom: 6px;\">Microcontroladores<\/div>\n<p style=\"font-size: 13px; color: #7a8a9a; margin: 0; line-height: 1.6;\">Pr\u00e1cticamente el 100% de los MCUs modernos incluye al menos un UART. Arduino (ATmega), ESP32, STM32, PIC, RP2040, nRF52840, RISC-V GD32\u2026 todos tienen UART hardware. Es la interfaz de debug universal.<\/p>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-radius: 10px; padding: 18px 20px;\">\n<div style=\"font-size: 22px; margin-bottom: 8px;\">\ud83d\udccd<\/div>\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 13px; font-weight: bold; color: #00bcd4; margin-bottom: 6px;\">M\u00f3dulos GPS \/ GNSS<\/div>\n<p style=\"font-size: 13px; color: #7a8a9a; margin: 0; line-height: 1.6;\">El protocolo NMEA-0183 de los m\u00f3dulos GPS (NEO-6M, NEO-8M, u-blox M10, L80) se transmite por UART a 9600 baud por defecto. Es el est\u00e1ndar desde los a\u00f1os 80. Cada tracker vehicular, drone y barco lo usa.<\/p>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-radius: 10px; padding: 18px 20px;\">\n<div style=\"font-size: 22px; margin-bottom: 8px;\">\ud83d\udcf6<\/div>\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 13px; font-weight: bold; color: #00bcd4; margin-bottom: 6px;\">M\u00f3dulos GSM \/ LTE<\/div>\n<p style=\"font-size: 13px; color: #7a8a9a; margin: 0; line-height: 1.6;\">SIM800, SIM7600, EC21, A7670 y pr\u00e1cticamente todos los m\u00f3dulos celulares se controlan por UART con comandos AT (Hayes Command Set, tambi\u00e9n de los 80s). ESP32 + SIM800L es un dise\u00f1o de producci\u00f3n actual.<\/p>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-radius: 10px; padding: 18px 20px;\">\n<div style=\"font-size: 22px; margin-bottom: 8px;\">\ud83c\udf21\ufe0f<\/div>\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 13px; font-weight: bold; color: #00bcd4; margin-bottom: 6px;\">Sensores inteligentes<\/div>\n<p style=\"font-size: 13px; color: #7a8a9a; margin: 0; line-height: 1.6;\">PM2.5\/PM10 (PMS5003, SDS011), CO2 (MH-Z19, SCD41), distancia ultras\u00f3nica, balanzas industriales, lectores de c\u00f3digo de barras, pantallas Nextion. UART es la interfaz est\u00e1ndar para sensores con salida digital.<\/p>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-radius: 10px; padding: 18px 20px;\">\n<div style=\"font-size: 22px; margin-bottom: 8px;\">\ud83c\udfed<\/div>\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 13px; font-weight: bold; color: #00bcd4; margin-bottom: 6px;\">Modbus RTU \/ Industrial<\/div>\n<p style=\"font-size: 13px; color: #7a8a9a; margin: 0; line-height: 1.6;\">Modbus RTU corre sobre RS-485 (capa f\u00edsica) con tramas de formato UART (capa l\u00f3gica). Es el protocolo de automatizaci\u00f3n m\u00e1s usado del mundo, con cientos de millones de dispositivos activos en f\u00e1bricas y edificios.<\/p>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-radius: 10px; padding: 18px 20px;\">\n<div style=\"font-size: 22px; margin-bottom: 8px;\">\ud83c\udf10<\/div>\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 13px; font-weight: bold; color: #00bcd4; margin-bottom: 6px;\">Consola de red<\/div>\n<p style=\"font-size: 13px; color: #7a8a9a; margin: 0; line-height: 1.6;\">Todos los routers, switches y firewalls profesionales (Cisco, MikroTik, Juniper) tienen un puerto de consola RS-232 o USB-serial. El est\u00e1ndar sigue siendo 9600 8N1 con cable rollover para configuraci\u00f3n de emergencia.<\/p>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-radius: 10px; padding: 18px 20px;\">\n<div style=\"font-size: 22px; margin-bottom: 8px;\">\ud83d\ude97<\/div>\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 13px; font-weight: bold; color: #00bcd4; margin-bottom: 6px;\">Electr\u00f3nica automotriz<\/div>\n<p style=\"font-size: 13px; color: #7a8a9a; margin: 0; line-height: 1.6;\">El bus LIN (UART simplificado de un solo hilo) controla subsistemas de bajo costo en cada auto moderno: asientos, espejos, ventanas, sensores de lluvia, climatizaci\u00f3n. Hasta 80 nodos LIN por veh\u00edculo de alta gama.<\/p>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-radius: 10px; padding: 18px 20px;\">\n<div style=\"font-size: 22px; margin-bottom: 8px;\">\ud83c\udfe5<\/div>\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 13px; font-weight: bold; color: #00bcd4; margin-bottom: 6px;\">Equipos m\u00e9dicos e industriales<\/div>\n<p style=\"font-size: 13px; color: #7a8a9a; margin: 0; line-height: 1.6;\">Balanzas anal\u00edticas, gluc\u00f3metros de laboratorio, impresoras de tickets fiscales (AFIP), controladores POS, lectores biom\u00e9tricos, sistemas de control de acceso. RS-232 y RS-485 dominan por su robustez y certificaci\u00f3n.<\/p>\n<\/div>\n<\/div>\n<p><!-- ====================================================== --><br \/>\n<!-- VENTAJAS Y LIMITACIONES --><br \/>\n<!-- ====================================================== --><\/p>\n<h2 style=\"font-family: 'Syne',sans-serif; font-size: 22px; font-weight: bold; color: #fff; margin: 0 0 20px; padding-bottom: 12px; border-bottom: 1px solid #1e2a38; display: flex; align-items: center; gap: 12px;\"><span style=\"background: rgba(102,187,106,0.1); width: 28px; height: 28px; border-radius: 6px; display: inline-flex; align-items: center; justify-content: center; font-size: 14px;\">\u2696\ufe0f<\/span><br \/>\nVentajas y limitaciones<\/h2>\n<div style=\"display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 40px;\">\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-left: 3px solid #00bcd4; border-radius: 10px; padding: 20px 22px;\">\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 11px; font-weight: bold; letter-spacing: 1px; text-transform: uppercase; color: #00bcd4; margin-bottom: 14px;\">\u2726 Por qu\u00e9 sigue siendo relevante<\/div>\n<div style=\"font-size: 14px; color: #8090a0; line-height: 1.9;\">\u2713 <strong style=\"color: #c0cad8;\">Solo 2 cables<\/strong> \u2014 TX, RX y GND. Sin reloj, sin pull-ups, sin protocolo de bus complejo<br \/>\n\u2713 <strong style=\"color: #c0cad8;\">Debug nativo<\/strong> \u2014 Serial.print() es la ventana directa al firmware. El primer perif\u00e9rico en cualquier bring-up<br \/>\n\u2713 <strong style=\"color: #c0cad8;\">Determinismo<\/strong> \u2014 Un byte tarda exactamente 10 tiempos de bit (8N1). \u00datil en tiempo real<br \/>\n\u2713 <strong style=\"color: #c0cad8;\">Ecosistema inmenso<\/strong> \u2014 60 a\u00f1os de documentaci\u00f3n, librer\u00edas y soporte en todo compilador y RTOS<br \/>\n\u2713 <strong style=\"color: #c0cad8;\">Bajo consumo<\/strong> \u2014 Sin terminaciones de bus ni l\u00f3gica de arbitraje adicional<\/div>\n<\/div>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-left: 3px solid #e05a00; border-radius: 10px; padding: 20px 22px;\">\n<div style=\"font-family: 'JetBrains Mono',monospace; font-size: 11px; font-weight: bold; letter-spacing: 1px; text-transform: uppercase; color: #e05a00; margin-bottom: 14px;\">\u2726 Cu\u00e1ndo no usarlo<\/div>\n<div style=\"font-size: 14px; color: #8090a0; line-height: 1.9;\">\u2717 <strong style=\"color: #c0cad8;\">Solo punto a punto<\/strong> \u2014 Sin multi-nodo nativo. Para bus usar RS-485<br \/>\n\u2717 <strong style=\"color: #c0cad8;\">Detecci\u00f3n de error b\u00e1sica<\/strong> \u2014 El bit de paridad solo detecta errores de 1 bit. Para m\u00e1s confiabilidad agregar CRC (Modbus, HDLC)<br \/>\n\u2717 <strong style=\"color: #c0cad8;\">Sincronizaci\u00f3n cr\u00edtica<\/strong> \u2014 Ambos extremos deben usar exactamente el mismo baud rate. Error &gt;3% \u2192 datos corruptos<br \/>\n\u2717 <strong style=\"color: #c0cad8;\">Sin direccionamiento<\/strong> \u2014 Los protocolos de capa superior (Modbus, AT commands) deben agregarlo<br \/>\n\u2717 <strong style=\"color: #c0cad8;\">Velocidad moderada<\/strong> \u2014 Para &gt;4 Mbps usar SPI o USB<\/div>\n<\/div>\n<\/div>\n<p><!-- FOOTER --><\/p>\n<hr style=\"border: none; border-top: 1px solid #1e2a38; margin: 40px 0;\" \/>\n<div style=\"background: #111820; border: 1px solid #1e2a38; border-radius: 10px; padding: 24px 28px; margin-top: 0; font-size: 13px; color: #6b7a8d; font-family: 'JetBrains Mono',monospace; line-height: 1.7;\">\n<p><strong style=\"color: #e8eaf0;\">Conclusi\u00f3n:<\/strong> El RS-232\/UART es el ejemplo m\u00e1s claro de un protocolo que &#8220;nunca muere&#8221; porque encontr\u00f3 su nicho natural: la comunicaci\u00f3n simple, confiable y ubicua entre un microcontrolador y el mundo exterior. En 2025 tiene m\u00e1s instancias activas que en cualquier otro momento de su historia gracias al IoT y la automatizaci\u00f3n industrial. Mientras existan microcontroladores, existir\u00e1 el UART.<\/p>\n<p><strong style=\"color: #e8eaf0;\">Fuentes:<\/strong> EIA\/TIA-232 Standard \u00b7 Datasheets MAX232, FT232RL, CH340G \u00b7 u-blox NEO-M8 Integration Manual \u00b7 Modbus.org Protocol Specification \u00b7 NMEA 0183 Standard \u00b7 STM32 HAL Documentation \u00b7 Espressif ESP32 Technical Reference Manual<br \/>\nArt\u00edculo publicado en rogerbit.com \u2014 Argentina, 2025.<\/p>\n<\/div>\n<\/div>\n<p><!-- \/content --><\/p>\n<\/div>\n<p><!-- \/wrapper --><\/p>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content -->","protected":false},"excerpt":{"rendered":"<p>&nbsp; \u25c6 Gu\u00eda T\u00e9cnica \u00b7 Protocolos de Comunicaci\u00f3n RS-232 &amp; UART El protocolo serial que no muere Nacido en los a\u00f1os 60, vigente en 2025. Historia completa del est\u00e1ndar serial que conect\u00f3 al mundo antes de que existiera el USB \u2014 y que hoy vive dentro de cada microcontrolador del planeta. \u25c6 Historia desde 1960 [&hellip;]<!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":1,"featured_media":8060,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[9],"tags":[45,2403,2362,624,2353,465,2408,2208,1835,1595,145,2274,2410,1786,613,154,2080,2404,633,2405,2409,2411,2402,598,2257,1401,941,980,2406,2407],"_links":{"self":[{"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/posts\/8051"}],"collection":[{"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/comments?post=8051"}],"version-history":[{"count":5,"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/posts\/8051\/revisions"}],"predecessor-version":[{"id":8059,"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/posts\/8051\/revisions\/8059"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/media\/8060"}],"wp:attachment":[{"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/media?parent=8051"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/categories?post=8051"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/tags?post=8051"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}