Ayuda para identificar Sync Serial Bus desconocido

6

¿Alguien ha visto una comunicación de bus serie sincronizada como esta?

Patrón repetido:

Detalledelcomienzo:

Personalmente, no he podido averiguarlo por mi cuenta ...

Sin embargo, parece que I2C:

  • El reloj funciona a 2 MHz (como debería estar en HS-I2C como mínimo)
  • Parece que la línea está bajada (I2C generalmente está levantada)
  • Parece que no puedo establecer ninguna condición de INICIO: el primer dato parece moverse después de 2 ciclos de reloj ...

También parece SPI, pero:

  • Si la línea de datos es MOSI, el patrón se repite después de 5 palabras de 9 bits cada una (mientras que una palabra SPI normal es de 8 bits). Más tarde, parece repetirse otro patrón: 4 palabras de 6 bits cada una ... Nunca he visto una comunicación SPI donde la longitud de la palabra cambia para el mismo par maestro / dispositivo. La longitud de palabra más pequeña podría ser un denominador común, pero esto debería darme longitudes de palabra de 3 bits ...
  • Si desconecto el dispositivo del bus, el maestro aún envía exactamente las mismas señales, aunque sabe que el dispositivo no está presente y no hay otra línea de datos, por lo que parece que esta línea de datos es bidireccional ( como es I2C) y hay algún tipo de apretón de manos (ACKnowledge) ocurriendo en alguna parte.

Estoy pensando que esto podría ser un bus / protocolo estandarizado del que simplemente no he escuchado y que quizás alguien aquí lo haya visto en alguna parte.

    
pregunta GPTechinno

2 respuestas

1

Esas 2 líneas probablemente no estén relacionadas

Supongo que estas dos líneas no son en absoluto un bus de "datos" en serie, dado que es realmente improbable que la línea de datos se muestree en ambos bordes del reloj. Al menos, no forman parte del mismo esquema de comunicación.

La traza similar al reloj es probablemente el comando "paso". El propósito es informar a la placa base del carro de tinta que el motor paso a paso ha puesto el carro en la siguiente posición a través de la página.

¿Algunas alternativas?

La traza similar a los datos es posiblemente un interruptor de límite u otro sensor de algún tipo que indica la posición de inicio, comienzo de fila, final de fila, etc.

O, alternativamente, puede ser un enlace de datos en serie asíncrono (sin señal de reloj transferida). Los largos períodos de inactividad entre bytes pueden ser necesarios para evitar la interferencia entre símbolos y promover la recuperación del reloj.

    
respondido por el DrFriedParts
0

La señal superior parece ser una señal de UART . Visualmente, parece que hay 11 bits transmitidos en cada carácter. Esto probablemente corresponde a 1 bit de inicio, 9 bits de datos y 1 bits de parada para 1 carácter. Es posible que uno de los bits de datos sea un bit de paridad, aparentemente como XNOR de los otros 8 bits de datos. Además, parece que solo aparecen dos caracteres en la captura de pantalla que proporcionó (0 1000 0110 y 1 1111 1111). Es probable que se trate de un bus compartido y lo que está viendo es (comando de dev1), (ack de dev2), (comando de dev1), (ack de dev2), etc. Probablemente sea una configuración de intercambio maestro-esclavo .

La segunda señal muestra una desviación obvia de la primera señal, incluso en el corto tiempo en que se grabó. Esto significa que no solo la señal no está relacionada, sino que probablemente tampoco esté en el mismo dominio de reloj que la primera señal.

Hay algunas maneras de probar esto. Desconecte el dispositivo que cree que es el maestro y falsifique el maestro enviando el comando 0 1000 0110. Si recibe 1 1111 1111 del esclavo, entonces sabrá que el bus está compartido.

Si eso funciona, también puedes probar si uno de los bits es un bit de paridad. Simplemente cambie cualquier bit del comando original y nuevamente supere al maestro conduciendo el bus con el carácter alterado. Si recibe un carácter diferente a cambio, es probable que se trate del carácter de intercambio.

    
respondido por el travisbartley

Lea otras preguntas en las etiquetas