Hi,

In one of my application I need to use a classic dot matrix printer. A search on the net revealed the pinouts of the centronics port and procedure to dump data.(/strobe<-PIC side, ack->printer side and so on like )) But I have no idea how the characters need to be sent. (Printer control protocol??) Sending a linefeed, paper feed works , but I couldn't print a single character. I suppose I need to load the printer buffer first with characters and then issue a print command or so. Please guide.

I also tried to build a parallel port data capture device, a PIC18F452@40MHz with the strobe line connected to RB0/INT. An assembly interrupt grabs the data and puts in a buffer(256 byte array). The buffer is then rolled out @115kbps to the hardware usart. I got some characters but nothing (ASCII) that I sent for printing. I will try the old dos way today.
So another question ,
I have found that the strobe is active for atleast 0.5uS and I am running at 100nS Instruction cycle time so by the time I fall into the interrupt and load the data it should be valid. BTW I dump the port data to a temporary variable in the first instruction of the assembly ISR and then find out the right array using indirect addressing and finally load the indexed array from the temporary variable (I still don't know the parallel port timings --> valid data --> strobe--> ack) So is this approach feasible.