basicamente lo que debes tener en cuenta es que las impresoras ,de comunicacion Paralela, poseen un modo en comun de funcionamiento, siguiendo el protocolo Centronics de transmision de datos. con ese protocolo puedes comunicarte con cualquier impresora.
existen 3 "puertos" en un dispositivo de comunicacion paralela, el primero lo llamamos data, el segundo control, y el tercero es un status.
Data = 8 bits (D0-D7) (ej Port B
)
Control = (del pic a la impresora)
Strobe
Autofeed
Initialize
SelectInput
Status = (de la impresora al pic)
Error
online
outpaper
acknowledge
busy
como es logico a cada pin del PIC le corresponde 1 de estos pines
*Strobe
– Un pulso cada vez que se envía un byte
– El periférico detecta que la información es estable.
* Data0Data7
– Cotienen el byte de datos.
*Acknowledge
– El periférico indica que ha recibido el byte.
* Busy
– El periférico indica que aún no está preparado para recibir otro byte.
* Paper End
– La impresora indica que se ha quedado sin papel.
* Select
– El periférico indica que se encuentra en línea.
*Auto Feed
– Permite conmutar entre
Retorno de carro: Volver al comienzo de línea.
Retorno de carro: Volver al comienzo de línea y añadir línea nueva.
* Error
– El periférico indica un error de hardware.
* Init
– El PIC inicializa el periférico.
* Select In
– El PIC coloca el periférico fuera de servicio.
* GND0GND7
– Tomas de tierra individuales para cada línea.
Visto asi es muy logico, primero seleccionas el dispositivo,inicializa el dispositivo, esperas la señal online y acknodledge, transmites autofeed,esperas acknowledge y online, colocas el dato en el puerto(ASCII), parpadea el strobe, acknodledge, luego el siguiente, y el siguiente etc..
la impresora posee un set de fuentes definidos y otros programables, siempre existe uno por defecto, y ese es con el que se imprimira de esta manera, esta forma de impresion se llama modo texto. Tratar de cambiar la fuente y el tamaño de la fuente ya se convierte en algo relativo a cada impresora y es un problema mucho mas complejo, es practicamente hacer un driver para la impresora y es necesario conocer profundamente los comandos de la misma.
Suerte
oldkami