PIO

Project: 13 Bits
LOGIC ANALYZER


In need of a fast way to analyze digital signals to a LCD display, I started on creating a way to do this via the PC's Printer port. First I needed a interface for reading. During a Micro controller project I learned about Bidirectional settings of the printer port. Creating a interface to read all 8 data bits and all 5 status bits from it, was easy.



The schematics give two possibilities in connecting the interface to the hardware.
- Directly, which is not a very good option.
- With using the 74LS245 or 244 as a buffer, as I use now.  
- Buffers with OPTO Couplers which is the safest.

Because the printer port has no 5V supply line, you would need one external. In most cases, because of the low current, the circuit to be analized can be used as a supply.

Having the interface on a breadboard, I started on the software. My first choice was a VB6 program, that could scan the lines and review them. I wrote it around two Printer port libraries, inpout.dll and Win95io.dll, to see the speed differences.

The LogAna.exe scan routines reads the data and status ports, 2048000 bytes each, to memory.

While scanning I found that the speed was much to slow for my needs. My next option was to create a MSDOS program in assembly, writing bytes to the hard disc during reading the port.

The scanning can be done with visible signals on the screen or without, which makes it faster. With the /d option files can be read back and are shown like the screen shot on the right.

The software can be downloaded here as a complete package, both LogAna.exe and LA.COM, with all the sources.

In the future The options are limited to gain speed. The fastest option I believe in, is a non OS, machine code routine which is booted from a multi boot environment.

If you like to participate in this project because of your knowledge or interest, please, let me know!