Estoy tratando de entender un protocolo (que se muestra en la figura 1) . Por ahora, he entendido que los datos se transfieren en un reloj alto a bajo. como se muestra en la figura. y la sincronización es para cada 8 bits.
Pero luego hay otro dato en la línea de datos, como se muestra en la figura 2 , que está cambiando en la parte baja del reloj. Esto no sucede en una instancia en particular, sino en algún momento en el 3.°, 4.°, 8.° bit, etc. con respecto a la sincronización. Además, estos datos son diferentes cada vez.
Después de esto, los datos se transfieren en cada reloj de menor a mayor, aún con sincronización de 8 bits (Figura 3). Entonces, estoy pensando que esto puede ser una especie de cambio de dirección de los datos del ciclo de lectura a escritura (o viceversa).
Alguien me puede ayudar a entender esto.
Editar: probablemente sea un chip de memoria, canon está utilizando en el protocolo los chips de impresora (Impresora iP7230) para comunicar los niveles de la impresora.
Vi esto hace unos días, pensé que podía probar esto. http://www.instructables.com/id/Reverse-Engineering-to-Emulate-Ink-Cartridges-for-/
Solo quería que me indicaran qué tipo de protocolo puede ser.
Sugeriría simplemente romper el protocolo. Mi interpretación de las imágenes mostradas es:
Figura 1: Esto muestra el protocolo con un bit de sincronización y un reloj. Se envía un nuevo bit en cada pendiente descendente del reloj. (Como usted mismo ha descubierto)
Figura 2: El cambio rápido del carril de datos puede ser solo algo de ruido. Tal vez este sea el final de los datos enviados desde la impresora al cartucho.
Figura 3: Esta podría ser la respuesta del cartucho. Se tarda mucho más en enviar sus bits después del reloj. Probablemente su controlador sea mucho más lento que el de la impresora. (Esto es solo una especulación por ahora, pero podría tener sentido ya que la impresora probablemente solicite datos del cartucho y no viceversa)
Sugeriría conectar un microcontrolador a las líneas y monitorear las solicitudes y respuestas que se envían. Esto ayudaría a apoyar la teoría. Y al final tal vez puedas replicarlo. Incluso sin conocer el protocolo.
Por lo general, cualquier protocolo es síncrono (señal de reloj separada) o asíncrono (los datos en sí tienen algún tipo de sincronización y el reloj está integrado).
Lo extraño de este protocolo es que la señal SYNC está en un período más bajo que el reloj, lo que significa que si el receptor usa el reloj para muestrear SYNC, nunca notará que la sincronización está cambiando. Solo puedo suponer que SYNC se usa como un reinicio asíncrono para que el receptor reinicie el conteo de bits (mal diseño, en mi humilde opinión).
En la figura 2, ve datos en un período aún más bajo. SI esto no es un problema de muestreo (ruido, mala conexión, etc.), me inclino a creer que en realidad no tiene reloj o que le falta una señal:
Sin embargo, esto es muy poco probable, de lo contrario significa que tiene muchos unos y ceros aquí.
PedroJ
Navdepp
Andy alias
Navdepp
rojoarenosoladrillo
Navdepp
rojoarenosoladrillo
apalopohapa
Navdepp