0
\$\begingroup\$

I am having trouble understanding how to design a circuit that will transmit multiple analog data signals to a computer through one RS232 COM port.

The analog data is a simple voltage reading from 12 different LEDs. The LEDs are triggered by relays that are controlled with software from the same computer that I will use to monitor the LEDs. Other software will be developed to read which LEDs have been triggered and if they are operating within a specified voltage range. For now I am just trying to understand the hardware aspect of transferring 12 analog signals through a single COM port.

My understanding is that an analog multiplexer can be used to combine the voltage signals and transmit them to the computer's com port through a voltage converter/serial interface like the MAX232. Is this possible without using a microcontroller chip? If not, what chip should I use to perform this task? I am trying to avoid using a microprocessor in the interest of keeping things as simple as possible.

Ultimately, I am looking for the simplest way to transmit multiple analog signals through a single COM port on a PC. Thanks in advance.

\$\endgroup\$
  • \$\begingroup\$ In any case you will need a microcontroller capable of reading the values from you multiplexer, encoding them to a protocol of your choice and transmitting them through the serial line. \$\endgroup\$ – Eugene Sh. Jul 27 '15 at 20:02
  • \$\begingroup\$ I don't see how you expect to get an analog signal to go to a serial port, because the serial port is digital. Incidentally, you can find a microprocessor with an analog multiplexer built in. \$\endgroup\$ – gbarry Jul 27 '15 at 20:08
  • \$\begingroup\$ @gbarry I thought the mux took care of the ADC process. Does it not? \$\endgroup\$ – kprince Jul 27 '15 at 20:19
  • \$\begingroup\$ Such a device may exist. It's not assumed in a mux. Maybe tell us what you are actually using. \$\endgroup\$ – gbarry Jul 27 '15 at 20:21
  • \$\begingroup\$ I am still in the design phase. Trying to figure out which devices I should be using. All I have so far is an array of 12 LEDs powered by a 5V signal and a computer that I plan on using to monitor the voltages across the LEDs. \$\endgroup\$ – kprince Jul 27 '15 at 20:56
1
\$\begingroup\$

My understanding is that an analog multiplexer can be used to combine the voltage signals and transmit them to the computer's com port

An analog multiplexer is just the electronic equivalent a multi-pole rotary switch - it simply steers one of the inputs to the output. The output is still analog, not suitable for transmitting via RS232 (which is a +-12V digital signal).

To create the serial signal you need an ADC (Analog to Digital Converter) to convert the analog voltages into digital numbers, and a UART (Universal Asynchronous Receiver Transmitter) to serialize the data bits with the correct baud rate and format.

You could make such a circuit using separate analog MUX, ADC and UART (with a few logic gates to 'glue' them together) or just use a small microcontroller which has all these features built in.

An MCU might seem more complex because it needs software, but the hardware can be much simpler. You will be sending 12 readings to the PC continuously and it needs to know which one is which, so your transmission protocol must include more than just the raw data. You will find it much easier to develop this protocol in software, rather than having to add even more chips to a complex digital control circuit.

\$\endgroup\$
  • \$\begingroup\$ How would you do this without MCU? What kind of UART is programmable enough to work without control signals? \$\endgroup\$ – Eugene Sh. Jul 27 '15 at 21:39
  • \$\begingroup\$ The CDP6402 (HD-6402, AY-5-1015 etc.) is a stand-alone UART that doesn't require a CPU to control it. It has separate 8 bit parallel input and output ports, which can interface to a parallel output ADC such as the AD7575 or ADC0804. You will need extra circuitry to generate the baud rate clock, control the MUX etc. Here is an example circuit (only has one input channel!):- retired.beyondlogic.org/serial/serial2.htm \$\endgroup\$ – Bruce Abbott Jul 27 '15 at 22:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.