Autor Tema: PIC manejando Impresora (LPT) con Protocolo Centronics  (Leído 3102 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Power_DSP

  • PIC10
  • *
  • Mensajes: 15
PIC manejando Impresora (LPT) con Protocolo Centronics
« en: 15 de Noviembre de 2010, 01:34:09 »
Saludos amigos,

Un proyecto un tanto olvidado, con la aparición de las impresoras USB, se dejo de lado a las impresoras que usaban el puerto paralelo, pero estas son muy utiles para utilizarlas en proyectos microcontrolados, implementando el famoso protocolo centronics (http://www.beyondlogic.org/spp/parallel.htm#3  [Referencia, BeyondLogic, 14/Nov/2010).
Para tal fin estoy empleando un PIC18f2550 @ 48MHz, y una impresora Citizen GSX190 matricial.
Aunque el protocolo es muy sencillo, estoy aun con algunos problemas (la impresion esta muy lenta y en ocaciones se pierden algunos datos), estoy tratando de ver si es posible enviar en modo buffer los datos.

============================
PIC 18F2550 PINOUT
PORTB - Data
RA0 - nStrobe
RC0 - Busy
RC1 - nACK
RA1 - Reset
RA2 - Select (NC por el momento)
Todos los pines estan directamente conectados a la impresora sin resistencias de pull-up
============================

============================
PROTOCOLO para manejar la impresorea LPT

1) Inicializar la impresora Reset 0.5 ms
2) Cargo caracter ASCII en la linea Data
3) Espero hasta que este libre la impresora (BUSY = 1, libre)
4) Mando un pulso de strobe( ), de 1ms
5) Espero hasta que (nACK = 0
6) Si se necesita enviar otro dato voy a paso (2)




 
« Última modificación: 16 de Noviembre de 2010, 14:10:40 por Power_DSP »

Desconectado RockLee_89

  • PIC16
  • ***
  • Mensajes: 140
Re: PIC manejando Impresora (LPT) con Protocolo Centronics
« Respuesta #1 en: 20 de Febrero de 2013, 23:56:06 »
amigo lograste hacer funcionar la impresora yo tengo el mismo dilema que el tuyo
saludos

Desconectado reiniertl

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1187
Re: PIC manejando Impresora (LPT) con Protocolo Centronics
« Respuesta #2 en: 25 de Febrero de 2013, 11:42:40 »
Has intentado utilizar el puerto paralelo del PIC. El PIC18F2550 tiene un módulo priférico que funciona como puerto paralelo. Si bien es genérico se puede configurar como un puerto tipo centronics y aprovechar las facilidades para las señales de handshaking, así te ahorras una pila de problemas.

En cuanto a la pérdida de datos no se que es lo que te pueda estar ocurriendo, excepto que el handshaking requiera temporización, algo que no creo ocurra así, a no ser que la impresora esté diseñada para solicitar interrupción al host y allí esté el fallo. Es decir que no respondes en tiempo y el device aborta la operación.

Saludos
Reinier


 

anything