old-www/HOWTO/IO-Port-Programming-7.html

47 lines
2.1 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
<TITLE>Linux I/O port programming mini-HOWTO: Hints</TITLE>
<LINK HREF="IO-Port-Programming-8.html" REL=next>
<LINK HREF="IO-Port-Programming-6.html" REL=previous>
<LINK HREF="IO-Port-Programming.html#toc7" REL=contents>
</HEAD>
<BODY>
<A HREF="IO-Port-Programming-8.html">Next</A>
<A HREF="IO-Port-Programming-6.html">Previous</A>
<A HREF="IO-Port-Programming.html#toc7">Contents</A>
<HR>
<H2><A NAME="s7">7. Hints</A></H2>
<P>If you want good analog I/O, you can wire up ADC and/or DAC chips to
the parallel port (hint: for power, use the game port connector or a
spare disk drive power connector wired to outside the computer case,
unless you have a low-power device and can use the parallel port
itself for power, or use an external power supply), or buy an AD/DA
card (most of the older/slower ones are controlled by I/O ports). Or,
if you're satisfied with 1 or 2 channels, inaccuracy, and (probably)
bad zeroing, a cheap sound card supported by the Linux sound driver
should do (and it's quite fast).
<P>With accurate analog devices, improper grounding may generate errors
in the analog inputs or outputs. If you experience something like
this, you could try electrically isolating your device from the
computer with optocouplers (on <EM>all</EM> signals between the computer
and your device). Try to get power for the optocouplers from the
computer (spare signals on the port may give enough power) to achieve
better isolation.
<P>If you're looking for printed circuit board design software for Linux,
there is a free X11 application called Pcb that should do a nice job,
at least if you aren't doing anything very complex. It is included in
many Linux distributions, and available in
<A HREF="ftp://sunsite.unc.edu/pub/Linux/apps/circuits/">ftp://sunsite.unc.edu/pub/Linux/apps/circuits/</A> (filename
<CODE>pcb-*</CODE>).
<P>
<P>
<HR>
<A HREF="IO-Port-Programming-8.html">Next</A>
<A HREF="IO-Port-Programming-6.html">Previous</A>
<A HREF="IO-Port-Programming.html#toc7">Contents</A>
</BODY>
</HTML>