February 2012
S M T W T F S
« Jan    
 1234
567891011
12131415161718
19202122232425
26272829  

Parallel Port IO Interface Project

Senior Design Projects
Georgia Institute of Technology

Executive Summary:

Professors, students and engineers in industry often work on projects that require sophisticated data communication interfaces to provide inputs or to measure outputs from their projects. These interfaces might be digital or analog in nature. Scenarios where multi-line digital input/output interfaces are required range from basic debugging to providing serial/parallel/I2C etc. inputs to ICs on PCBs. One might also need input/output analog interfaces to provide inconveniently valued voltages to power supply rails, for feeding a signal to an onboard part at a specific frequency or even detecting voltage values at certain nodes for debugging.

Often engineers resort to using off-the-shelf products like DAQ boards made by well known companies. These products might be reliable, user-friendly, and readily available but are often very expensive and therefore out of the limited budgets for many users like students and hobbyists working on EE projects. Furthermore, these products come with standard non-customizable functions and often converting data going into and out of these products turns into a minor project by itself. More often that not, one needs to install these DAQ cards onto the motherboard of a PC and go through complicated startup procedures in order to customize the PC to best use the card instead of the other way around. Also, in the rare circumstance that a part on these DAQ card stops working, the user neither has the required information nor the legal right to modify or replace the part.

For these reasons and many others there is a need of a cheap user friendly device that can enable a user to perform basic debugging and data monitoring tasks. The project described in this report allows users to make an easy to use IO system based on the computer’s parallel port. The device makes up for the deficiencies mentioned above by having a design that allows the user to replace malfunctioning parts. Also, the software created for this project, which the engineer would use to interface with the device is user-friendly and contains tools that allow the user to write code to make custom programs so that the user can use the board however he or she wants to for different projects. The board is priced well below off the shelf solutions and easily affordable by when compared to a typical student project budget.

Introduction:

The goal of this project is to create a device that can be easily built and used by student project groups, professors and hobbyists for digital and analog data monitoring and debugging applications. This is achieved by implementing the hardware design described in this report on a Printed Circuit Board which can be connected to the parallel port of a PC. The PC would run the necessary device drivers imported by a user interface both designed as a part of this project. This software would allow the user to communicate with the hardware on the PCB through control signals and general input/output lines on the parallel port thereby enabling the user to use the inputs and outputs as he or she wishes. The figure below is a basic big picture representation of the project.

PPort Schematic

In order to enable the above mentioned functionality, flexibility and platform independence the following design specifications need to be met.

  • The PCB should have 8 Analog inputs and 8 Analog outputs.
  • The PCB should have 8 Digital inputs and 8 Digital outputs.
  • The PCB should be able to operate at 3.3V and 5V power supply levels in order for the board to interface with TTL and CMOS parts.
  • PC parallel ports operate at TTL logic levels and the parts on board should be able to interface with the Parallel port smoothly without causing damage to the PC Parallel Port or the board. In order to do this, the inputs to the board need to be buffered and the required voltage conversion needs to performed on the inputs.
  • In order to provide the user with the option of using more than 8 input / output ports the PCB should have the ability to be cascaded with identical boards thereby providing input/output ports in multiples of 8.
  • The hardware should be equipped with the required device drivers and User Interface software which can be installed on the target PC, that the user can use in order to communicate with the parts.
  • Parts need to be chosen so that they are easily replaceable in the event of a part malfunction.

PPort PCB

Conclusion

It was concluded that the product design is promising although the actual PCB prototype was unsuccessful. The hardware design of the product is innovative and allows for cascading multiple boards. It is recommended that the same basic hardware design be used in future version of the project. The hardware design uses a minimal number of parallel port pins and most importantly allows the implementation of the cascading feature which is a very marketable and useful feature. The software is also very user friendly. Since the protoboard implementation of the project was successful, it is recommended that the PCB implementation of the project be concentrated on in the future with a few minor changes in hardware and software designs as deemed necessary. In hindsight, it would have been more advisable to assign more than one person to work on the software as had been done for all other tasks. This would reduce dependence on one person and result in better coordination. Moreover, it would have been advisable to allocate more time to PCB development, testing and debugging. This was not done due to minor changes made to the hardware on inclusion of the transceivers. Moreover, since the proto-board implementation had been successful, confidence prevailed on the chances of the PCB prototype being instantly successful as well. The issues presented by the PCB prototype testing were more or less unanticipated. The only cause of the PCB prototype being unsuccessful was a soldering problem with the transceivers. Expert help should have been sought while soldering the remarkably tiny transceiver parts. The parallel port group believes that on eliminating soldering related issues on the PCB, all tests would be successful. Although this problem was discovered on investigation, it could not be fixed due to lack of time.

Screen Shots of Software
PPort Screen Shot 1PPort Screen Shot 2PPort Screen Shot
PPort Screen Shot 4PPort Screen Shot

Team Member
James Harris
Zaheer Ahmed
Pranav Rastogi
Amol Desai
Ankit Khanna

141 comments to Parallel Port IO Interface Project