¿Cuáles son los protocolos de comunicación serial?
Pregunta 1: ¿Cuáles son los protocolos de comunicación serial? El bus I2C es un bus interno y se utiliza para conectar chips en el sistema interno. Por ejemplo, MCU y memoria, chip de realidad del teclado, conversión AD, etc. La comunicación serie se utiliza para comunicarse con dispositivos externos al sistema. Por ejemplo, comunicación entre dispositivos. Los protocolos de comunicación de I2C y de los puertos serie pueden ser iguales o diferentes, según la situación específica. La MCU se comunica con 2402 y el software de protocolo entre la MCU y la computadora puede ser exactamente el mismo. Por ejemplo, la MCU envía 1 2402 y la computadora envía 2.
Pregunta 2: ¿Qué es el protocolo de comunicación serie? El protocolo de comunicación serie se refiere a un acuerdo entre las partes que se comunican. El acuerdo incluye disposiciones unificadas sobre formato de datos, método de sincronización, velocidad de transmisión, pasos de transmisión, métodos de detección y corrección de errores y definiciones de caracteres de control, etc. Ambas partes en la comunicación deben cumplirlo. Por lo tanto, también se le llama procedimiento de control de comunicación o procedimiento de control de transmisión. Pertenece a la capa de enlace de datos en el modelo de referencia de siete capas OSI de ISO.
Pregunta 3: ¿Cómo escribir un protocolo de comunicación de puerto serie? El protocolo de comunicación lo puede definir usted mismo, pero los requisitos son diferentes. Puede definirlo a voluntad, según los requisitos del cliente o según. equipo relacionado (ya que usted Si su anfitrión escanea el código QR con un escáner, debe haber un protocolo de codificación relevante dentro del anfitrión. Puede encontrarlo leyendo las instrucciones correspondientes. Al mismo tiempo, también puede agregar un código de verificación, etc.
Pregunta 4: ¿Cuáles son los protocolos de comunicación serial del plc 232 o 485?
Pregunta 5: ¿Debería el protocolo de comunicación serial ¿Será hardware o software? ¿Es hardware, el flujo de datos del puerto serie es nativo, no hay datos compilados
A través del software, se reconoce como una señal para completar la función requerida
Pregunta 6: ¿Qué es el protocolo de comunicación del puerto serie R232? ¿Cuál es el contenido? ¿Cuál es la diferencia entre este y el R485? La diferencia es que 232 es full-duplex
485 es half-duplex
Pregunta 7: Protocolo de comunicación asíncrona para comunicación serial 1. Formato de datos para comunicación serial asíncrona Comunicación asíncrona ASYNC (Asynchronous La comunicación de datos, también conocida como comunicación asíncrona start-stop, es el método de transmisión de información de datos más utilizado en la comunicación por computadora. Se transmite en unidades de caracteres. No existe un requisito de intervalo de tiempo fijo entre caracteres y los bits de cada carácter se transmiten en un momento fijo. El método para que el receptor y el remitente logren la sincronización es establecer el bit de inicio y el bit de parada en el formato de caracteres. Antes de enviar oficialmente un carácter válido, el transmisor primero envía un bit de inicio, luego envía el bit de carácter válido y luego envía un bit de parada al final del carácter. El bit de inicio y el bit de parada constituyen una trama. Formato de datos durante la transmisión asíncrona en serie: ⑴ Bit de inicio: el bit de inicio debe ser un nivel lógico "0" que dure un bit y marque el inicio de la transmisión de un carácter. ⑵ Bits de datos: Los bits de datos son de 5 a 8 bits, que siguen al bit de inicio y son los bits de datos válidos de los caracteres que se transmiten. Al transmitir, el bit de orden inferior del carácter se transmite primero y luego el bit de orden superior del carácter. El número de bits de datos se puede configurar mediante hardware o software. ⑶ Bit de paridad: el bit de paridad solo ocupa un bit y se utiliza para comprobar pares o impares. También se puede omitir el bit de paridad. ⑷ Bit de parada: el bit de parada es de 1 bit, 1,5 bits o 2 bits y se puede configurar mediante software. Debe ser un nivel lógico "1", que marca el final de la transmisión de un carácter. ⑸ Bit inactivo: el bit inactivo indica que la línea está en un estado inactivo y en este momento la línea está en un nivel lógico "1". No hay necesidad de bits inactivos. En este momento, la eficiencia de la transmisión asincrónica es la más alta. 2. Recepción de datos durante la comunicación asíncrona en serie. Durante la comunicación asíncrona en serie, el receptor detecta o monitorea continuamente los cambios de nivel en la línea de entrada en serie. Cuando se detecta un bit de inicio válido, sabe que le sigue un bit de carácter válido y comienza a hacerlo. recibir caracteres válidos. Cuando se detecta el bit de parada, se sabe que los caracteres transmitidos han finalizado. Después de un intervalo de tiempo aleatorio, se lleva a cabo el proceso de transmisión del siguiente carácter. Por lo general, el período del reloj de muestreo del extremo receptor es más corto que el período de bits del carácter transmitido. La frecuencia del reloj de muestreo comúnmente utilizada es 16 veces la frecuencia de bits. Esta medida se toma para mejorar la capacidad antiinterferente, consulte la Figura 8.19. Puede verse en la figura que el período de bits Td del carácter transmitido es igual a 16 veces el período del reloj de muestreo Tc.
Cada flanco ascendente del reloj de muestreo del receptor muestrea la señal de entrada y verifica si el nivel bajo en la línea de datos de recepción permanece durante 8 o 9 ciclos de reloj consecutivos para determinar si el nivel bajo en la línea de transmisión es un verdadero comienzo. De esta manera, se pueden evitar malos funcionamientos causados por interferencias de ruido y se pueden eliminar bits de inicio en falso. El punto medio del bit de inicio se determina con bastante precisión, proporcionando así una base de tiempo a partir de la cual se muestrean los bits de datos restantes cada 16 Tc para garantizar la exactitud de los datos transmitidos. Para lograr el punto de referencia de los datos de muestreo, el extremo receptor puede realizar los siguientes pasos: ⑴ Configure un contador de frecuencia de reloj de muestreo en el extremo receptor. Cuando se detecte el flanco descendente del bit de inicio, bórrelo y comience a contar el reloj de muestreo. , es decir, cada vez que un reloj, el contador se incrementa en 1. ⑵ Cuando el contador cuenta hasta 8, significa que ha alcanzado la posición media del bit inicial. En este momento, el valor de muestreo es 0, lo que indica que es el bit inicial real y el contador se borra al mismo tiempo. Si el valor de muestreo no es 0, significa que el bit inicial es El flanco descendente detectado no es el borde ascendente del bit inicial real, sino una interferencia. Esta detección debe invalidarse, el contador debe borrarse y la detección del bit inicial. debe reiniciarse. ⑶ Después de detectar el bit de inicio real, el contador se borra. Cada vez que cuenta hasta 16, se muestrea la forma de onda de la señal recibida (es decir, la mitad de cada bit), el valor recopilado se almacena temporalmente y el contador se borra y. cuente nuevamente hasta que se muestree el último bit de parada. ⑷ Si el bit de parada se muestrea correctamente (1), el carácter se recibe y se carga en el registro desde el registro temporal. Si el valor de muestreo del bit de parada es 0, significa que hay un problema con la sincronización o la transmisión, y los caracteres muestreados esta vez no son válidos y no se recibirán. Características de la comunicación asíncrona ⑴ El protocolo de comunicación asíncrona start-stop transmite datos sin altos requisitos en la sincronización del reloj tanto de la parte emisora como de la receptora, incluso si existe una cierta desviación en la frecuencia del reloj de la parte receptora y emisora, siempre que. el receptor no muestra el fenómeno de desalineación después del bit de inicio, la transmisión de datos aún puede continuar normalmente. Por lo tanto, el remitente y el receptor de la comunicación asincrónica no necesitan tener relojes diferentes, y ambas partes en la comunicación pueden usar sus propios relojes locales. ⑵ En aplicaciones prácticas, el formato de datos de la comunicación asíncrona en serie, incluida la cantidad de bits de datos, la configuración de bits de verificación y la cantidad de bits de parada, se puede determinar de acuerdo con las necesidades reales mediante circuitos de interfaz en serie programables y comandos de software. . En diferentes sistemas de transmisión, estos pasan...>>
Pregunta 8: El protocolo de comunicación serial El método de comunicación RS-232 permite una conexión simple de tres cables: Tx, Rx y cable de tierra. Pero para la transmisión de datos, ambas partes deben utilizar la misma velocidad en baudios para la sincronización de datos. Aunque este método es suficiente para la mayoría de las aplicaciones, su uso es limitado en situaciones en las que el receptor está sobrecargado. En este momento, se necesita la función de protocolo de enlace del puerto serie. En esta sección, analizamos las tres formas más comunes de protocolo de enlace RS-232: protocolo de enlace de software, protocolo de enlace de hardware y Xmodem. a. Protocolo de enlace de software: el primer tipo de protocolo de enlace que analizamos es el protocolo de enlace de software. Generalmente se usa cuando los datos reales son caracteres de control, similar a cómo GPIB usa cadenas de comando. Todavía quedan tres cables necesarios: Tx, Rx y cable de tierra, porque los caracteres de control en la línea de transmisión no son diferentes de los caracteres ordinarios. La función SetXModem permite al usuario usar o prohíbe el uso de los dos caracteres de control XON y XOFF. . Estos caracteres son enviados por el receptor en una comunicación para hacer que el remitente haga una pausa. Por ejemplo: supongamos que el remitente envía datos a una alta velocidad en baudios. Durante la transmisión, el receptor descubre que el búfer de entrada está lleno porque la CPU está ocupada con otro trabajo. Para detener temporalmente la transmisión, el receptor envía XOFF, un valor típico es 19 decimal o 13 hexadecimal, hasta que el búfer de entrada esté vacío. Una vez que el receptor está listo para recibir, envía XON, un valor típico es 17 decimal, que es 11 hexadecimal, para continuar la comunicación. Cuando el buffer de entrada está medio lleno, LabWindows envía XOFF. Además, si se interrumpe la transferencia XOFF, LabWindows enviará XOFF cuando el buffer alcance el 75% y el 90%. Obviamente, el remitente debe seguir este código para garantizar que la transmisión continúe. b. Apretón de enlace de hardware: el segundo es utilizar el protocolo de enlace de línea de hardware. Al igual que las líneas Tx y Rx, RTS/CTS y DTR/DSR funcionan juntas, una como salida y la otra como entrada. El primer conjunto de líneas son RTS (Solicitud de envío) y CTS (Borrar para enviar).
Cuando el receptor está listo para recibir datos, establece la línea RTS en alto para indicar que está listo. Si el remitente también está listo, establece CTS en alto para indicar que está a punto de enviar datos. Otro conjunto de líneas son DTR (DataTerminal Ready) y DSR (Data SetReady). Estas líneas se utilizan principalmente para la comunicación por módem. Permite que el puerto serie y el módem comuniquen su estado. Por ejemplo: cuando el módem está listo para recibir datos de la PC, configura la línea DTR en alto para indicar que se ha establecido la conexión a la línea telefónica. La línea de lectura DSR está configurada en alto y la PC comienza a enviar datos. Una regla simple es que DTR/DSR se usa para indicar que el sistema está listo para la comunicación, mientras que RTS/CTS se usa para la transmisión de un solo paquete de datos. En LabWindows, la función SetCTSMode habilita o deshabilita el uso del protocolo de enlace de hardware. Si el modo CTS está habilitado, LabWindows usa las siguientes reglas: Cuando la PC envía datos: la biblioteca RS-232 debe detectar la línea CTS alta antes de enviar datos. Cuando la PC recibe datos: si el puerto está abierto y la cola de entrada está libre para recibir datos, la función de biblioteca establece RTS y DTR en alto. Si la cola de entrada está llena al 90%, la función de biblioteca establece RTS bajo pero mantiene DTR alto. Si la cola del puerto está casi vacía, la función de la biblioteca establece RTS en alto pero deja DTR en alto. Si el puerto está cerrado, la función de biblioteca establece RTS y DTR en nivel bajo. c, protocolo de enlace XModem: el último protocolo de enlace analizado se denomina protocolo de transferencia de archivos XModem. Este protocolo es muy común en la comunicación por módem. Aunque se utiliza habitualmente en comunicaciones por Módem, el protocolo XModem se puede utilizar directamente en comunicaciones con otros dispositivos que sigan este protocolo. En LabWindows, la aplicación XModem real está oculta para el usuario. Siempre que las PC y otros dispositivos utilicen el protocolo XModem, las funciones XModem de LabWindows se utilizan en las transferencias de archivos. Las funciones son XModemConfig, XModemSend y XModemReceive. XModem utiliza un protocolo con parámetros entre: start_of_data, end_of_data, neg_ack, wait_delay, start_delay, max_tries, paquete_size. Estos parámetros deben ser identificados por ambas partes que se comunican. El XModem estándar tiene una definición estándar... >>
Pregunta 9: Cómo diseñar un protocolo de comunicación en serie. En pocas palabras, para crear un protocolo. Primero considere la topología de su bus. ¿Es una transmisión punto a punto (un maestro y un esclavo, o dos nodos pares), o hay varios nodos esclavos conectados a un host (¿cómo están vinculados los nodos y el host? ¿Es un enlace en estrella, un enlace en árbol? , o una conexión tipo bus).
Si es punto a punto con un maestro y un esclavo, es lo más sencillo. Si hay dos nodos pares o nodos de bus de uno a muchos, entonces es necesario considerar la competencia del bus, los conflictos, el diseño de direcciones, el procesamiento del tiempo de espera y otros problemas.
El punto a punto maestro-esclavo más simple (red cerrada, es decir, se determina el número de nodos de dispositivos y los dispositivos no fase con diferentes protocolos no pueden acceder a la red).
En primer lugar, establezca su velocidad en baudios. Es mejor establecer una velocidad en baudios para todos los nodos. Algunas personas se han comunicado con diferentes velocidades en baudios, pero yo nunca he jugado con eso. Además, el tamaño de la velocidad en baudios depende del volumen de datos sobrecargado de su bus, la velocidad del procesador/controlador, la complejidad electromagnética del entorno de la aplicación y el ancho de banda del dispositivo de hardware (las frecuencias más altas se verán afectadas, lo que resultará en ¿aumento de la tasa de pérdida de paquetes? ¿Es grande o afecta a otros dispositivos)
Entonces, una trama debe tener un identificador de trama al principio para permitir a la otra parte determinar si es una trama de datos o una trama de respuesta. La comunicación punto a punto debe tener al menos una trama de comando de datos y una trama de respuesta. El marco de comando de datos contiene la información de configuración principal y el marco de respuesta le dice a la otra parte si los datos se recibieron correctamente. De lo contrario, vuelva a enviarlos. Además, si la identificación de la trama recibida no es ninguna de estas dos, significa que puede haber un problema con el bus/interferencia/acceso a otros dispositivos desconocidos.
En segundo lugar, considere cuántos datos está transmitiendo y si necesita una longitud fija de paquetes de datos. Si los datos transmitidos son a veces grandes (más de diez o docenas de bytes) y otras veces pequeños (menos de un byte), entonces la longitud no se puede fijar. En este caso, la información de longitud del paquete/trama debe agregarse al segundo y tercer bytes (antes y después de los bytes de identificación de la trama).
Luego está la dirección, aunque solo hay dos puntos en la comunicación cara a cara, se recomienda agregar la dirección de origen y la dirección de destino. Esto es sólo una sugerencia y es opcional en la comunicación punto a punto.
Se debe añadir después un número de secuencia para indicar el número de veces que se envía. Por ejemplo, te envié Hola una vez y debería enviarte un Mundo la próxima vez, pero informaste que el marco de respuesta no se recibió o recibió un error, y luego te envié Hola nuevamente. Hola marco El número de serie debe ser 2.
Lo siguiente es el contenido de los datos...
Finalmente está la verificación, CRC... XOR... o algo así, que se realiza en todos los bits de los datos anteriores de desde el principio del cuadro hasta el final del cuadro. Para evitar cualquier error de bit durante la transmisión.
Eso es lo que me viene a la mente ahora mismo. Para presentar una queja, recuerdo cuando un grupo de nosotros estábamos trabajando en un protocolo para equipos de señalización ferroviaria. Después de que la gente del instituto de investigación vio el protocolo que se nos ocurrió en dos semanas (basado en RS584), dijeron: ¿Es? ¿El protocolo es tan sencillo de elaborar? No me atrevo a decir que puedo idear un protocolo sólido y seguro sin probarlo durante un año.
Pregunta 10: ¿Cuál es la diferencia entre el formato de la trama de datos y el protocolo de comunicación durante la comunicación en serie? Los parámetros del puerto en serie se refieren a los parámetros correspondientes que deben configurarse para la comunicación en serie. El teléfono se conecta a la red, ¿utiliza el número de telecomunicaciones o el protocolo de comunicación? Ya sea que el número de móvil utilice la red 3G o la red 2G, aunque el teléfono móvil lo configura automáticamente, aún necesita configurarlo.
El protocolo de comunicación es el idioma que hablas. Cuando te comunicas con otros, todos hablan mandarín, uno habla inglés y el otro habla francés, definitivamente no funcionará.
485-can-tcp/...nt