I was wondering if it was possible to make an Arduino diecimila act as a parallel port for my pc? I'm trying to hook up a stepper driver from an old cnc machine but my laptop or desktop don't have parallel ports. Also it would be really nice if I could monitor the communication to the pins with the Arduino. That way I could figure out the commands that are sent to the board from the computer so maybe I could eventually run everything from the Arduino.
I'm going to have to expand the pins I was thinking with shift registers. I would need 25 pins not sure if they need to be pwm or not, have never worked with parallel ports before.
A lot of the pins on a 25-pin parallel port are Ground, so there's fewer data/control signals than one would expect.
PWM will not be needed.
Digital signals - just 0 & 5V.
Could use shift register - or just drive the 17 pins, leave Rx/Tx free, still have 1 pin free.
Power is not supplied via the parallel port.
The USB to parallel port cables usually only support printers and may not work with other software. If you have a full sized pc, then you might consider a pci card like below.
Yeah... I might just have to break down and buy one. I really wanted to figure out what it was sending over the parallel port so I could emulate it with the Arduino.
A couple of years ago I bought an FTDI UM245R module (USB - parallel) thinking I could use it as a substitute for a PC printer port to interconnect with a DIY digital storage oscilloscope I had made when PCs still had parallel ports.
Unfortunately USB is fundamentally different from the parallel port and it doesn't support fast single byte write-read sequences, even though it works exceptionally well as fast multi-byte reads or writes.
I now have a simplified version of my OScope working with the UM245R - it reads data at 1 MByte /second and I think it should work at 4MB/s - but the way I interface with it is very different from the old parallel port - partly because the UM245R only has 8 I/O pins. If I was buying again I would probably buy a UM232R module.
So whether an Arduino (or any of the USB-parallel adapters) would substitute for a parallel port very much depends on how your application works. The Arduino will be a great deal slower than on of the FTDI modules because it interfaces with the PC as a serial device rather than a USB device.
So I have found an old computer that has a parallel port. The application that came with the stepper driver seems basic, and I have been trying to map it out. I think I have the basic pin out, and am thinking I can run this with my Arduino.